2011-08-01 20 views
0

新的Android開發和即時通訊工作讓我的iOS應用程序到Android。在我的應用程序中,使用列表視圖,這很好。這是我到目前爲止,它的內部tabwidget。Android SDK - ListView,根據點擊的行啓動不同的意圖

setListAdapter(new ArrayAdapter<String> (this, R.layout.row_style, ITEMS)); 
    ListView lv = getListView(); 
    lv.setTextFilterEnabled(true); 

static final String[] ITEMS = new String[] { 
    "Apple", "Google", "Hewlett Packard", "Adobe" 
}; 

請注意,ITEMS字符串數組只是虛擬數據。現在,這是我的問題,如果用戶點擊Apple,我想開始一個名爲AppleActivity的活動。我如何用onItemClickListener做到這一點。在iPhone的SDK我可以叫

如果(objectAtIndex == 0)

我能做些什麼simular?希望你們能幫忙。

喬納斯:) 請注意,ITEMS字符串數組只是虛擬數據。現在,這是我的問題,如果用戶點擊Apple,我想開始一個名爲AppleActivity的活動。我如何用onItemClickListener做到這一點。在iPhone的SDK我可以叫

如果(objectAtIndex == 0)

我能做些什麼simular?希望你們能幫忙。

喬納斯:)

+0

下面的答案部分非常混亂。喬納斯,你可以給答案添加評論,而不是迴應另一個答案。我抓住你放在那裏的代碼,添加適當的變量名稱,它應該適用於你想要的。 – Rob

回答

0

是的,你可以,你會有這樣的事情 - >設置適配器後

yourList.setOnItemClickListener(new OnItemClickListener() { 
    public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,long arg3) { 
    //arg2 represents the position , the eletement at arg 2 that is clicked 
    if (arg2==1) startActivity (new Intent ("blabla")); 
    if(arg2==2) startActivity (new Intente("Adobeeee")); 
    } 
0

這是因爲你試圖啓動適配器,而一個活動類必須是Intent構造函數的第二個參數。此外,此活動必須在清單文件中進行描述。

0
lv.setOnItemClickListener(new OnItemClickListener() { 
     public void onItemClick(AdapterView<?> parent, View v, int position, long id) { 

      if (position == 0) { 
       Intent algebra = new Intent(v.getContext(), AlgebraListViewController.class); 
       startActivity(algebra); 
      } 
      else if (position == 1) { 
       Intent oekonomi = new Intent(v.getContext(), OekonomiListViewController.class); 
       startActivity(oekonomi); 
      } 
     } 
    }); 

這應該做工精細,改名爲變量,所以你知道他們(的爲arg0,ARG1,ARG2,並ARG3代替)什麼。