焦点可以防止onclick

时间:2012-11-19 22:04:42

标签: android

某些元素正在窃取焦点,而我的列表视图上的点击不会注册。 有人可以建议找到哪种方法吗?

以下是该应用的工作原理:

活动>内部自定义视图> onTouch> AlertDialog.builder.setView(自定义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
  }
}); 

我读了二十或三十个堆栈溢出帖子,它几乎总是与窃取焦点的视图有关。 哪个视图正在窃取焦点,我该如何调试呢?

谢谢! :)

1 个答案:

答案 0 :(得分:0)

答案在Sam的评论中:它只是起作用,而且我并没有放弃对话。