簡體   English   中英

如何使列表視圖項目可點擊?

[英]how to make list view items clickable?

我必須使列表視圖項目可點擊,即開始一項活動。 我正在使用以下代碼。 我不知道如何進行。

package org.example.androidsdk.demo;

import android.app.ListActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;

public class MainActivity extends ListActivity {

    String [] mTestArray;

    /** Called when the activity is first created. */
    @Override
    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        // Create an ArrayAdapter that will contain all list items
        ArrayAdapter<String> adapter;

        mTestArray = getResources().getStringArray(R.array.myArray);

        /*
         * Assign the name array to that adapter and also choose a simple layout
         * for the list items
         */
        adapter = new ArrayAdapter<String>(
            this,
            android.R.layout.simple_list_item_1,
            mTestArray);

        // Assign the adapter to this ListActivity
        setListAdapter(adapter);
    }
}

只是在您的Activity覆蓋onListItemClick

 @Override
    protected void onListItemClick(ListView l, View v, int position, long id) {
       String item = (String) getListAdapter().getItem(position);
       Toast.makeText(this, item + " selected", Toast.LENGTH_LONG).show();
   }

轉到此鏈接,了解如何處理ListView http://wiresareobsolete.com/2011/08/clickable-zones-in-listview-items/

您需要實現OnItemClickListener

並調用getListView().setOnItemClickListener(this)

最后,在覆蓋的onItemClick方法中執行所需的操作。

嘗試下面的代碼:-

listView.setOnItemClickListener(new OnItemClickListener() {
  @Override
  public void onItemClick(AdapterView<?> parent, View view,
    int position, long id) {
    Toast.makeText(getApplicationContext(),
      "Click ListItem Number " + position, Toast.LENGTH_LONG)
      .show();
  }
}); 

閱讀以下鏈接以獲取更多信息:

http://www.vogella.com/tutorials/AndroidListView/article.html

http://androidexample.com/Create_A_Simple_Listview_-_Android_Example/index.php?view=article_discription&aid=65&aaid=90

覆蓋onListItemClick並在其中編寫“活動”打開代碼。

    @Override
    protected void onListItemClick(ListView l, View v, int position, long id) {
      Intent i = new Intent(this,MyClass.class);
      startActivity(i);
   }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM