某些元素正在窃取焦点,并且我的列表视图上的点击没有注册。有人可以建议一种方法来找到哪个吗?
这是该应用程序的工作方式:
Activity > 内部自定义 View > onTouch > AlertDialog.builder.setView(custom ListView)
我错误地认为我需要两个选择,并且完全成功地使用了相同的设置,之前在构建器上使用了 .setPositiveButton 和 .setNegativeButton 。但我需要更多选择,因此需要一个 ListView。
以下是 ListView 中的相关行:
final ListView lv = new ListView(this);
lv.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, names) {
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if (convertView == null) { convertView = new TextView(GameActivity.this); }
((TextView)convertView).setText((String)getItem(position));
return convertView;
}
public long getItemId(int position) { return position; }
public String getItem(int position) { return names[position]; }
public int getCount() { return names.length; }
});
lv.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
///////Nothing happens, never called
}
});
我阅读了二十或三十篇堆栈溢出帖子,几乎总是与视图窃取焦点有关。哪个视图正在窃取焦点,我该如何调试?
谢谢!:)