如何在Android中通过id从布局中获取视图?
这是我能找到的唯一方法,但它似乎很粗糙:如何在Android中通过id从布局中获取视图?,android,android-view,Android,Android View,这是我能找到的唯一方法,但它似乎很粗糙: public View getViewByIdFromLayout(int id) { for (int i = 0; i < layout.getChildCount(); i++) { View v = layout.getChildAt(i); if (v.getId() == id) return v; } return null; } 公共视图getView
public View getViewByIdFromLayout(int id) {
for (int i = 0; i < layout.getChildCount(); i++) {
View v = layout.getChildAt(i);
if (v.getId() == id)
return v;
}
return null;
}
公共视图getViewByIdFromLayout(int-id){
对于(int i=0;i
有更好的方法吗?这些视图是通过编程而不是通过xml创建的,视图的ID在给定的布局中是唯一的,但可以在其他布局中重复使用。只要您给了它一个ID,您仍然可以使用它。只需确保调用ID唯一的布局。只要您给了它一个ID,您仍然可以使用它。只需确保调用ID唯一的布局。您可以使用它应该改变
if (v.getId() == id)
return v;
到
你应该改变
if (v.getId() == id)
return v;
到
你不能只保留视图的引用,以后再使用它吗?你不能只保留视图的引用,以后再使用它吗?啊,我的眼睛一定是昏过去了,因为我在布局的方法列表中找不到它。也许我在找getViewByID什么的。啊,我的眼睛一定是呆滞了,因为我找了它,但在布局的方法列表中找不到它。可能我在找getViewByID什么的。
.equals()
比较String
值=
是比较int
equalitymore通常情况下的正确运算符,.equals()比较对象.equals()
比较String
值=
是比较int
equality的正确运算符。通常,.equals()比较对象