0

一部の要素がフォーカスを盗んでおり、リストビューのクリックが登録されていません。誰かがどれを見つける方法を提案できますか?

アプリの仕組みは次のとおりです。

アクティビティ > 内部カスタム ビュー > onTouch > AlertDialog.builder.setView(カスタム ListView)

私は誤って 2 つの選択肢が必要だと考え、以前のビルダーで .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
  }
}); 

私は 20 つか 30 のスタック オーバーフローの投稿を読みましたが、ほとんどの場合、ビューがフォーカスを盗んでいることに関係しています。どのビューがフォーカスを奪っていますか?これをデバッグするにはどうすればよいですか?

ありがとう!:)

4

1 に答える 1

0

答えはサムのコメントにあります。それは単に機能し、ダイアログをdismiss()していませんでした。

于 2012-11-26T15:09:27.713 に答える