【问题标题】:Button event to Listview and back按钮事件到 Listview 并返回
【发布时间】:2012-02-02 23:33:45
【问题描述】:

我有一个安卓程序。它有一个按钮,单击该按钮应该打开各种字符串的列表视图。

但问题是,只要我点击按钮,列表视图就会打开,但我原来的 android 程序崩溃了。 ( ListView 在另一个类中,现在开始运行)。

            public void onClick(View v) {
                Intent intent = new Intent(v.getContext(), MemoryReader.class);
                startActivityForResult(intent, 0);
            }

这是代码 sn-p。我究竟做错了什么?

另外,我想要的是单击按钮,打开一个复选框列表,选择各种内容,然后返回原始屏幕。

我现在的想法是实现一个带有复选框的列表视图(我在某处读过,这是可能的),然后使用 getAllCheckedOptions() 函数来检索已检查的内容。

如果有更简单的方法来解决我的问题,请指点我那里。

非常感谢任何帮助。

【问题讨论】:

  • “我原来的安卓程序崩溃”是什么意思?是否有强制关闭对话框?
  • 我正在从我的主 Activity(显示按钮的位置)调用 ListActivity。主要活动正在崩溃。而且我的 Android 清单中有 ListActivity - 这不是问题。

标签: android android-intent android-listview


【解决方案1】:

您开始寻找结果,但无法判断结果来自何处。这不好。把 0 改成其他更好的东西。

这是我的一些工作代码,它们为结果调用活动:

-------------------------- PackVideo 活动 - --------------------------------------

调用 ServerSetActivity

Intent serverSetIntent = new Intent();
serverSetIntent.setClass(this, ServerSetActivity.class);
startActivityForResult(serverSetIntent, CHANGE_IP);

常量设置和结果捕获:
(我把它们放在一起,因为只有在捕获两个常量时才会相遇)

static public int CHANGE_IP = 1000;
static public int CHANGE_IP_DONE = 1001;

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    // If the request was for CHANGE_IP and the request was CHANGE_IP
    if (resultCode == CHANGE_IP_DONE && requestCode == CHANGE_IP) {
        readBaseInfoFromServer(getApplicationContext());
        startVideoPlayerService(getApplicationContext());
        setCurrentChannelAndPlay(getApplicationContext(), 0);
    }
}

----------------------------------- ServerSetActivity ---- ------------------------------------

被调用活动的结束

final Intent intent = new Intent();
setResult(PackVideo.CHANGE_IP_DONE, intent);
finish();

请把 MemoryReader 的 "onCreate" 和 both 布局放在这里。

【讨论】:

  • MemoryReader 只不过是 developer.android.com/resources/tutorials/views/… 只是一个虚拟的 hello 列表代码,现在要测试。我将 0 更改为什么?我尝试了几个不同的选项(随机选择),但结果是一样的。
  • 在您讲述的示例中,整个列表没有布局。你有吗?
  • 从您的示例中理解并解决了问题。谢了哥们! :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-05-04
  • 2020-08-09
  • 2013-09-27
相关资源
最近更新 更多