android - ListView 点击?

标签 android android-listview

我有一个关于将 onClick 添加到 ListView 的问题,我已经尝试尽可能多地遵循 Android NotePad 教程,但是对于我的布局我不太明白如何添加它。

这是 Activity 类,它简单地填充 View

 public class RemoveForm extends ListActivity {
private DB_Conn DB_Handler;
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        DB_Handler = new DB_Conn(this);
        DB_Handler.open();
        fillData();


}

protected void onListItemClick(View view) {
    Context context = getApplicationContext();
    CharSequence text = "Hello toast!";
    int duration = Toast.LENGTH_SHORT;

    Toast toast = Toast.makeText(context, text, duration);
    toast.show();

}

private void fillData() {
    // Get all of the notes from the database and create the item list
    Cursor c = DB_Handler.fetchAll();
    startManagingCursor(c);
    String[] from = new String[] { DB_Conn.KEY_MODULECODE,
        DB_Conn.KEY_DAY,
        DB_Conn.KEY_TIME,
        DB_Conn.KEY_DURATION,
        DB_Conn.KEY_TYPE,
        DB_Conn.KEY_ROOM,DB_Conn.KEY_ROWID };
int[] to = new int[] { R.id.MODULECODE,
        R.id.DAY,
        R.id.TIME,
        R.id.DURATION,
        R.id.TYPE,
        R.id.ROOM,
        R.id.ROWID};

// Now create an array adapter and set it to display using our row
    SimpleCursorAdapter entry =
    new SimpleCursorAdapter(this, R.layout.list, c, from, to);
    setListAdapter(entry);
}
}

这是每条记录的 xml。

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content"
    android:layout_width="match_parent"
    android:orientation="vertical">
    <LinearLayout android:id="@+id/linearLayout1" 
        android:layout_height="wrap_content"
        android:layout_width="match_parent" 
        android:layout_weight="1"
        android:baselineAligned="false">
    </LinearLayout>
    <LinearLayout android:id="@+id/linearLayout2" android:layout_height="wrap_content"
    android:layout_width="match_parent" android:layout_weight="1"
    android:baselineAligned="false">
    </LinearLayout>
    <RelativeLayout 
        android:layout_height="wrap_content" 
        android:id="@+id/relativeLayout1" android:layout_width="match_parent">
        <TextView android:id="@+id/ROWID" 
                android:text="TextView"
                 android:layout_marginRight="5dip"
                  android:layout_alignParentLeft="true"
                   android:layout_height="wrap_content" 
                   android:layout_width="wrap_content"></TextView>
        <TextView android:id="@+id/MODULECODE" 
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" 
                android:text="TextView" 
                android:layout_toRightOf="@+id/ROWID" 
                android:layout_alignTop="@+id/ROWID"></TextView>
        <TextView android:layout_marginLeft="25dip" 
                android:id="@+id/DAY" 
                android:layout_width="50dip" 
                android:layout_height="wrap_content" 
                android:text="TextView" 
                android:layout_below="@+id/MODULECODE" 
                android:layout_alignLeft="@+id/MODULECODE"></TextView>
        <TextView android:id="@+id/TIME" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="TextView" 
        android:layout_toRightOf="@+id/DAY" 
        android:layout_alignTop="@+id/DAY" 
        android:layout_alignBottom="@+id/DAY"></TextView>
        <TextView android:id="@+id/DURATION" 
        android:layout_width="wrap_content"
         android:layout_height="wrap_content" 
         android:text="TextView" 
         android:layout_toRightOf="@+id/TIME" 
         android:layout_alignTop="@+id/TIME" 
         android:layout_alignBottom="@+id/TIME"></TextView>
        <TextView android:id="@+id/ROOM" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="TextView" 
        android:layout_toRightOf="@+id/MODULECODE" 
        android:layout_alignTop="@+id/MODULECODE"
        android:layout_alignBottom="@+id/MODULECODE"></TextView>
        <TextView android:id="@+id/TYPE" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="TextView" 
        android:layout_toRightOf="@+id/ROOM" 
        android:layout_alignTop="@+id/ROOM" 
        android:layout_alignBottom="@+id/ROOM"></TextView>
    </RelativeLayout>

如果有人能提供帮助,我将不胜感激。

最佳答案

你必须 override的,

 @Override
 protected void onListItemClick(ListView l, View v, int position, long id) {

 }

关于android - ListView 点击?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10393106/

相关文章:

android - 一行中的按钮单击事件影响android中listview中的其他行

android - 如何创建带有标题的微调器?

Android Http Post 正在下载错误的 SSL 证书

具有多种布局的 Android 数据绑定(bind)

java - 在 Android 中获取新插入的联系人

android - 应用程序崩溃而不是给出 Internet 连接错误

android - 在 Activity 中访问 fragment ?

Android:将空 View 设置为 ListView

java - ListView弹出消息

android - 类别为 : groups, 收藏夹和字母表的联系人