lv.setAdapter(adp);
lv.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
// TODO Auto-generated method stub
Cursor c = (Cursor)arg0.getItemAtPosition(arg2);
call = c.getString(0);
Intent i = new Intent(null, Ldetail.class);
i.putExtra("id",call);
startActivity(i);
问问题
69 次
5 回答
3
更改此行。
Intent i = new Intent(null, Ldetail.class);
而不是 null 使用 context 或 activityname.this 。您必须传递上下文或活动名称。
Intent i = new Intent(YourCurrentActivityName.this, Ldetail.class);
或者
Intent i = new Intent(getBaseContext(), Ldetail.class);
并在 android 清单文件中声明Ldetail活动。
于 2013-03-02T07:18:43.957 回答
1
试试这个,而不是使用 getapplicationcontext() ..
于 2013-11-29T07:39:39.577 回答
0
usersList.setOnItemClickListener(new AdapterView.OnItemClickListener() {
在这里,您使用了适配器视图的视图,它是您的自定义适配器的父类。这就是为什么它不起作用。相反,您应该使用自定义适配器的视图。
这里的 getView() 函数帮助您将 Parent Adpater View 的 View 转换为 Custom Adapter View。
所以你使用这两个选项中的任何一个,
usersList.setOnItemClickListener(new CustomAdapterView.OnItemClickListener() {
或者
usersList.setOnItemClickListener(new OnItemClickListener() {
于 2013-03-02T07:18:28.293 回答
0
为什么你传递 null 而不是上下文?
在意图中添加您的上下文
Intent i = new Intent(yourclassname.this, Ldetail.class);
于 2013-03-02T07:19:55.123 回答
0
Intent i = new Intent(null, Ldetail.class);
i.putExtra("id",call);
startActivity(i);
您必须传递上下文或活动。
Intent i = new Intent(this, Ldetail.class);
或者
Intent i = new Intent(getBaseContext(), Ldetail.class);
于 2013-03-02T07:20:00.387 回答