【问题标题】:Android: onListItemClick not opening up the .xml fileAndroid:onListItemClick 未打开 .xml 文件
【发布时间】:2011-02-23 17:13:08
【问题描述】:

public void onListItemClick(ListView l, View v, int position, long id) { 如果(位置 == 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 中的项目时,程序崩溃。是的,我已将活动添加到清单中。

有没有人解决这个问题,因为很多人似乎有同样的问题。

非常感谢。

【问题讨论】:

  • 请使用 adb logcat 找出是什么异常导致程序崩溃并告诉我们

标签: android listview listitem


【解决方案1】:

好的,我搞定了。

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

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

【讨论】:

  • 也许他们有不同的 API 版本?在不知道发生了什么异常的情况下很难说出问题所在
【解决方案2】:

您还没有在onListItemClick 中包含对 super 的调用

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-02
    • 1970-01-01
    相关资源
    最近更新 更多