0

android.app.ListFragment で拡張されたクラスがあり、リスト ビューがクリックされたときにイベントを作成したいのですが、何も機能せず、配列アダプターを使用しています。私はほとんどすべてを試しましたが、今これを試していますが、まだ機能していません。

ListView list = (ListView) rootView.findViewById(android.R.id.list);
    list.setOnItemClickListener(new AdapterView.onItemClickListener() {
       @Override
       public void onItemClick(AdapterView<?> adapter, View view, int position, long arg) {
          Object listItem = list.getItemAtPosition(position);
       } 
    });

私のアダプターフラグメントクラスは次のとおりです。

4

4 に答える 4

0

これを試して:

list.setOnItemClickListener(new OnItemClickListener() {
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                // When clicked, show a toast with the TextView text
                Toast.makeText(getApplicationContext(),
                ((TextView) view).getText(), Toast.LENGTH_SHORT).show();
            }
        });

参考: http ://www.mkyong.com/android/android-listview-example/

于 2013-09-05T06:07:06.793 に答える
0

onListItemClickのメソッドを使用する必要がありListFragmentます。

だから削除

ListView list = (ListView) rootView.findViewById(android.R.id.list);
list.setOnItemClickListener(new AdapterView.onItemClickListener() {
   @Override
   public void onItemClick(AdapterView<?> adapter, View view, int position, long arg) {
      Object listItem = list.getItemAtPosition(position);
   } 
});

そしてあなたのクラスに追加してください

public void onListItemClick (ListView l, View v, int position, long id) {
    //Do what you need
}
于 2013-09-05T07:43:30.023 に答える
0
@Override
protected void onListItemClick(ListView l, View v, int position, long id){
    super.onListItemClick(l, v, position, id);
    Toast.makeText(getActivity().getApplicationContext(), "Field Vaasdasdaccant",    Toast.LENGTH_LONG).show();
}
于 2013-09-05T08:21:26.017 に答える