Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/195.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Android中通过id从布局中获取视图?_Android_Android View - Fatal编程技术网

如何在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()比较对象