1

public void onListItemClick(ListView l, View v, int position, long id) { if(position == 0){ setContentView(R.layout.cuisine); } }

我有一个字符串数组,我正在使用上述方法尝试在单击时打开一个名为“cuisine”的新 xml 文件。但它一直失败!

我做对了吗,还是我做错了什么?

谢谢。

好的,通过查看网络上的类似问题,人们说让 onListItemClick() 开始一个新活动并使用该新活动打开新视图?

所以我所做的是这个......

 protected void onListItemClick(ListView l, View v, int position, long id)
{
    Intent dundrumIntent = new Intent(v.getContext(), DundrumSelector.class);
    dundrumIntent.putExtra("position", position);
    startActivityForResult(dundrumIntent, 0);
}

接着

import android.app.Activity;

导入android.os.Bundle;

公共类 DundrumSelector 扩展 Activity { @Override public void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState);

    int position = getIntent().getExtras().getInt("position");

    if(position == 0){
        setContentView(R.layout.cuisine);
    }
}

}

但是我仍然遇到同样的问题。当我单击 listView 中的项目时程序崩溃。是的,我已将活动添加到清单中。

有没有人对此有解决方案,因为很多人似乎有同样的问题。

非常感谢。

4

2 回答 2

1

好的,我让它工作了。

我已经将 avd 改回了我设置的原始 avd,现在它似乎可以正常工作了。

出于某种原因,当我在 google avd 上使用它时它不起作用?

于 2010-05-25T14:38:36.800 回答
0

你还没有调用 super inonListItemClick

尝试制作第一行:super.onListItemClick(l,v,position,id);

于 2010-05-25T14:44:48.803 回答