是否可以将局部View ID存储在变量中

时间:2019-05-20 13:38:19

标签: android kotlin

我想知道是否可以在变量中存储部分View ID。 例如:如果我有两个视图,一个视图的ID为food_pizza,第二个视图的ID为food_burger,是否可以将"pizza""burger"存储在一个变量中,如下所示:字符串,然后通过R.id.("food_" + VARIABLE)R.id.("food_" + VARIABLE)访问两个视图。

提前谢谢! :)

2 个答案:

答案 0 :(得分:1)

不知道为什么要这么做,但是您可以:)

int id = getResources().getIdentifier("food_" + VARIABLE, "id", getPackageName());

答案 1 :(得分:0)

不可能像这样的R.id。(“ food _” + VARIABLE)

您可以尝试以下替代方法:

创建HashMap<String, Integer> ids = new HashMap<>();

然后添加ID以使用food_pizza等键进行映射

ids.put("food_pizza", R.id.food_pizza);
ids.put("food_burger", R.id.food_burger);

要使用它,您将获得findViewById(ids.get("food_" + VARIABLE));这样的ID