[英]Setting OnClickListeners for Dynamically added views
我正在向linearlayout添加一個小視圖。 我必須對其應用一個View.OnClickListener
,但是即使已添加視圖, onClick
仍不會觸發。 這是我的方法
for (Streams stream : streamArray) {
streamCount++;
if (!(streamCount > 3)) {
// ADD AN ITEM
View v = li.inflate(R.layout.stream_item, theLinearLayoutforStreamItems, false);
//SET ONCLICK
v.setOnClickListener(new android.view.View.OnClickListener() {
public void onClick(View v) {
Log.i("onclick", ""+position );
}
});
txtStreamItem = (TextView) v.findViewById(R.id.txtViewStream_item);
txtStreamItem.setText(stream.name);
theLinearLayoutforStreamItems.addView(v);
}
onClick()
不會觸發。 我不知道為什么,也無法在互聯網上找到任何東西。
我認為您真正想要實現的是:
txtStreamItem.setOnClickListener(new android.view.View.OnClickListener() {
public void onClick(View v) {
Log.i("onclick", ""+position );
}
});
將其放在此行下面:
txtStreamItem = (TextView) v.findViewById(R.id.txtViewStream_item);
將View.setClickable
和focus-able true
設置focus-able true
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.