0

私は SherlockListFragment を拡張していますが、私の質問は Fragments に関連するより一般的なものであるように思われるため、問題ではありません。

ここで、リストに単純なクリック リスナーを実装しましたが、呼び出されません。

public class MyListFragment extends SherlockListFragment {

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        View v = inflater.inflate(R.layout.list, container, false);
        v.setOnClickListener(new OnClickListener() {
                 public void onClick(View view) {
                    Log.i("debug", "single click");
             }
          });

          return v;
    }
}

これで何か問題がありますか?

//解決:

listView.setOnItemClickListener(new OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> parent, View view,
              int position, long id) {
        Log.i("debug", "single click");
    }
});
4

2 に答える 2

1

はい、そのコードに問題があります。リスト行でクリック イベントを取得する場合は、setOnItemClickListener() を使用してから、コードで他のメソッドを使用したのと同じ方法で新しい onItemClickListener() オブジェクトを渡す必要があります。これがお役に立てば幸いです。幸運を。

于 2012-05-30T16:19:45.367 に答える
0

ここに投稿するために単にそれを除外しなかったと仮定すると、あなたの問題は、作成したビューを返すのと同じくらい簡単かもしれません。クリックをテストしているリストが表示されますか?

于 2012-05-30T15:56:36.880 に答える