2017-05-13 7 views
0

私はいくつかのアイテムのリストビューを持っています。リストアイテムclick.forを知りたいのですが、例えばリストビューアイテムをクリックすると、初めてトーストメッセージが表示されます。同じアイテムがトーストメッセージをクリックしました2回目に同じアイテムをクリックしました。リストビューアイテムのクリック

最終的に私は、個々のListView項目「EVEN」をクリックし、「ODD」はあなたのリストビュー項目ごとにカウンタが含まれます追加のArrayListを、追加することができます

listView.setOnItemClickListener(new AdapterView.OnItemClickListener() 
{ public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
     if(firstTime) { 
      firstTime = false; 
      if(count%2==0){ 
       Toast.makeText(getApplicationContext(), "Clicked on Row2nd: " + 
       country.getName(), Toast.LENGTH_LONG).show(); 
       count=0; 
      } 
      else{ 
       Toast.makeText(getApplicationContext(), "Clicked on Row1st: " + 
       country.getName(), Toast.LENGTH_LONG).show(); 
       count=0; 
      } 
     } 
     else{ 
      firstTime=true; 
      Toast.makeText(getApplicationContext(), "Clicked on Row1111: " + 
      country.getName(), Toast.LENGTH_LONG).show(); 
      count=count+1; 

     } 
    } 
}); 
+0

あなたは、変数を追加することができます( 'clickCount'を言う)listview''で使用されているモデルにし、すべてのクリックでそれを増やす –

答えて

1

をクリックすること。知りたいです

レッツは、あなたが持っていると言う:あなたのリスナーで

ArrayList<String> listViewData = getSomeData(); 
ArrayList<Integer> dataClickCount = new ArrayList<>(); 
for(String item : listViewData) 
{ 
    dataClickCount.add(0); 
} 

以降:

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

    if(dataClickCount.get(posion)%2==0){ 
     Toast.makeText(getApplicationContext(), "Clicked on Row1nd, odd click: " + country.getName(), Toast.LENGTH_LONG).show(); 
     dataClickCount.set(posion,1); 
    } 
    else{ 
     Toast.makeText(getApplicationContext(), "Clicked on Row2st, even click: " + country.getName(), Toast.LENGTH_LONG).show(); 
     dataClickCount.set(posion,0); 
    } 


}}); 
+0

ありがとう@regev avraham –

+0

あなたは歓迎です: –

+0

なぜあなたは私の答えを受け入れられませんでしたか? –

関連する問題