【问题标题】:Show New List from ListActivity's Item Click Event从 ListActivity 的项目点击事件中显示新列表
【发布时间】:2012-01-06 18:07:22
【问题描述】:
package com.comboyz.TantaGo;

import android.app.ListActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter; 

public class startMenu extends ListActivity{
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
              super.onCreate(savedInstanceState);
          setListAdapter(new ArrayAdapter <String>(this,R.layout.startmenu,category));
    }
    static final String [] category= new String []{
        "cinema","restuarnt","hotel","cafe","women shoping","men shoping"
    };
}

我希望当我点击 cinema 时创建一个包含所有电影院名称的新列表,当我按下餐厅时,它会创建一个包含所有餐厅名称的不同列表,依此类推

【问题讨论】:

  • 你的意思是有一个新列表吗?去掉旧的?
  • 它让我进入另一个列表,里面有所有电影院的名字
  • 你为什么不编写另一个活动并使用 Intent Extras 将关键字(电影院/餐厅)传递给它......像上面一样制作新列表并相应地显示在那里?

标签: android list listview arraylist android-listview


【解决方案1】:

有很多不同的方法可以做到这一点,但我建议做一些更改。

首先,使用 ListView 元素,相对于做 ListActivity,查看this 示例。

然后我建议使用 ViewFlipper,您可以设置动画在不同的视图元素之间翻转,它们的工作原理是它们具有视图元素的层次结构,一次只能显示一个,所以你会怎么做例如,

<ViewFlipper
      .... >

    <ListView
         ... >

    <ListView
         ... >

    <ListView
         ... >

</ViewFlipper>

当您在主 Activity 中获取 View Flipper 时,您将设置显示的视图,并且当您设置 0、1、2 时,它将在列表视图之间翻转,例如 0 可能是主屏幕,1 剧院,2餐厅等

【讨论】:

    【解决方案2】:

    很简单,您可以在列表中使用上下文菜单,但它只是为长按事件触发。例如:

      registerForContextMenu(listView);
    

    参考http://www.dotnetexpertsforum.com/contextmenu-for-listview-longclick-event-in-android-t2034.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-30
      • 2017-01-17
      • 1970-01-01
      • 2011-07-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多