0

私はこれをonCreateメソッドに次のように持っています:

    ListView lv = (ListView)findViewById(android.R.id.list);
   adapter = new ModuleAdapter(this);
   lv.setAdapter(adapter);
   lv.setOnItemClickListener(this);

その後、コードの後半で:

    @Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
    // TODO Auto-generated method stub
    Log.v(TAG, "clicked");

}

OnItemClickListenerが実装されています。

onItemClickから新しいアクティビティを起動しようとしていますが、機能していないようです。

Androidは初めてで、Javaについてはあまり知りません。誰か助けてもらえますか?ありがとう。

4

3 に答える 3

0

レイアウトでFocusableInTouchModeをtrueに設定していますか?その場合、onItemClickは呼び出されません。

于 2012-11-04T00:23:31.660 に答える
0
ListView lv = (ListView)findViewById(android.R.id.list);

Androidのシステムリソースを取得しようとしているが、xmlレイアウトで記述したリストビューが必要な場合です。

次のように見えるとしましょう:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <ListView
        android:id="@+id/listView1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" >
    </ListView>

</LinearLayout>

コードを次のように変更する必要があります

ListView lv = (ListView)findViewById(R.id.listView1);

説明する人もいます:

  • android.R- Android OS のデフォルト リソースです - ボタン、画像、リストビュー アイテムのレイアウトなどに似ています。

  • R- あなたのプロジェクトは [your package path].R のような完全なパスをリソース化します。例: com.example.R

于 2012-11-02T19:05:13.673 に答える
0

xxx_row.xml でこの変更を試してください

<TextView xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="match_parent"
  android:enabled="false">
</TextView>

少なくとも私にとっては、幅と有効な属性を変更するとうまくいきました。

于 2013-01-19T20:35:42.640 に答える