1

这是我的代码。我在这里使用一些数组数据填充列表视图。当我点击列表时,我可以使用 Toast 来检测它。但我无法调用另一个活动。代替 Toast 事件。
公共类 ListView 扩展 ListActivity {

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setListAdapter(new ArrayAdapter<String>(this, R.layout.foodjoint, RESTAURANTS));

    android.widget.ListView lv = getListView();
    lv.setTextFilterEnabled(true);


    lv.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();
            myClickHandler();
        }
    });

    //      ListView restuList=ListView();

}

static final String[] RESTAURANTS = new String[] {
    "Restaurant 1", "Restaurant 2", "Restaurant 3", "Restaurant 4", "Restaurant 5",
    "Restaurant 6", "Restaurant 7", "Restaurant 8", "Restaurant 9", "Restaurant 10",
    "Restaurant 11", "Restaurant 12", "Restaurant 13", "Restaurant 14", "Restaurant 15"
};
public void myClickHandler() {
    finish();
    Intent gotoLIst=new Intent(ListView.this,MenuActivity.class);
    startActivity(gotoLIst);
}

这是我的 XmL 文件

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@color/AliceBlue "
    android:padding="10dp"
    android:textSize="16sp"
    android:focusableInTouchMode="false"
    android:clickable="false"
    android:focusable="false" >

我需要调用另一个活动@listView onitemClick。

实际上,我使用了另一个也使用一些列表视图的活动。该活动包含一些错误。这就是它不起作用的原因。感谢 Luksprog 帮助我找到答案。

4

1 回答 1

1

开始新的之后,您可能会想要finish()当前Activity的:

public void myClickHandler() {
    Intent gotoLIst=new Intent(ListView.this,MenuActivity.class);
    startActivity(gotoLIst);
    finish();
}
于 2012-04-09T11:57:00.117 回答