亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Android中listview監聽item

Android中listview監聽item

諾曼蒂克 2014-10-24 09:46:13
假如說一個listview里面有成千上萬個item,難道我們要在 下面這個方法里面寫成千上萬個監聽事件?是否存在什么簡單的方法?private?class?MyOnItemClickListener?implements?OnItemClickListener?{ @Override public?void?onItemClick(AdapterView<?>?arg0,?View?arg1,?int?arg2, long?arg3)?{ //?TODO?Auto-generated?method?stub Intent?intent?=?new?Intent(); switch?(arg2)?{ case?0: break; 。 。 。 。 。 。 。 default: break; } } }
查看完整描述

2 回答

已采納
?
溜達溜達

TA貢獻106條經驗 獲得超19個贊

如果你每個item的邏輯都不一樣,那你就得寫1萬個,如果一樣的話就沒必要switch,寫一個方法足夠了

查看完整回答
反對 回復 2014-10-24
  • 諾曼蒂克
    諾曼蒂克
    那假如執行Intent帶String數據跳轉,所有item跳轉到同一個Activity里,區別是說帶的數據不同!這樣怎么寫方法那?
  • 溜達溜達
    溜達溜達
    把要傳的數據作為參數傳給方法,Intent設置、跳轉等這些操作全在方法中進行
  • 諾曼蒂克
    諾曼蒂克
    老師 我不是太明白 能舉個例子嗎??
?
溜達溜達

TA貢獻106條經驗 獲得超19個贊

@Override
public?void?onItemClick(AdapterView<?>?arg0,?View?arg1,?int?arg2,?long?arg3)?{
????//比如所有Item點擊后都傳遞當前的索引值arg2給另一個界面
????setData(arg2);
}
	
//跳轉頁面
public?void?setData(int?index){
????Intent?intent?=?new?Intent(A.this,?B.class);
????intent.putExtra("index",?index);
????startActivity(intent);
}


查看完整回答
2 反對 回復 2014-10-24
  • 諾曼蒂克
    諾曼蒂克
    然后在另一個界面上接收索引值,根據不同的索引值,用if判斷匹配不同的數據?是這樣嗎?老師
  • 溜達溜達
    溜達溜達
    不是,傳索引值只是舉個例子,你想傳什么就傳什么
  • 諾曼蒂克
    諾曼蒂克
    謝謝老師的耐心解答!
  • 2 回答
  • 3 關注
  • 4586 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號