存储最终List数据的最佳实践

时间:2016-07-18 14:50:49

标签: android constants android-adapter

我有自定义ListView,每个项目包含两个图标,文字,说明等。它的静态数据,但我有几个列表要显示。

在那一刻,我将所有这些保存在最终ArrayList中,如下所示:

    public static final int ACTION_MAIN = 1;
    public static final int ACTION_LEFT = 2;
    private static final List<ModelMenu> list = new ArrayList<ModelMenu>(){{
    add(new ModelMenu(ACTION_MAIN , R.drawable.icon_main, R.drawable.image_main, R.string.main, R.string.main_description, false));
    add(new ModelMenu(ACTION_LEFT , R.drawable.icon_left, R.drawable.image_left, R.string.left, R.string.left_description, false));
  }};

List传递给适配器。在这种情况下,我使用常量ACTION_MAIN, ACTION_LEFT等。将其设置为视图ID,并使用它来了解OnItemClickListener view.getId()<resources> <item type="id" name="menu_home"/> <item type="id" name="menu_login"/> </resources> 点击了哪个项目

没关系?或者更好地用于前者。 XML like done here

更新0:找到one more选项,但在这种情况下,我们需要保留所有资源的订单...

或其他任何选项更可取?

更新1: 找到了另一种保存行动的方法:

CryptoStream

1 个答案:

答案 0 :(得分:0)

当修饰符为final时,您无法修改变量的值。

选中this,这是使用ListView的自定义适配器和扩展名填充BaseAdapter的示例。

希望得到这个帮助。