在layout中,找到控件VIEW的办法???

mengyiren1234 2009-12-31 04:09:06
我知道,layear = new LinearLayout(this); 动态的往这个层中加入各种VIEW !
1. layear.findViewById(id) 这个是找配置资源中,不可行。。
2. layear.findViewWithTag(tag) 这个找到前提是,在往layout中加入的VIEW必须先setTag(),这样才能找到!
3.不知道有没有其他什么方法。。。ViewTreeObserver tree= layear.getViewTreeObserver(); 不知道这个方法是什么意思,难得是返回的树状结构的view,然后去遍历???
...全文
492 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
hyfeng_ccle 2010-12-06
  • 打赏
  • 举报
回复
貌似用查找tag的方法找布局里的组件,效率没找ID的高。
dahutiger 2010-12-06
  • 打赏
  • 举报
回复
addView?
dinjay 2010-08-30
  • 打赏
  • 举报
回复
LayoutInflater mInflater = LayoutInflater.from(context);
获取到整个layout,然后调用getchild方法去遍历。这个问题记得以前有人在论坛问过。
如果是一个子控件的话,通过getparent方法来访问外层布局。
DrSmart 2010-08-30
  • 打赏
  • 举报
回复
遍历子控件,简单的 getChildCount()获取数量 ,getChildAt获取第几个view
hello10086 2010-08-11
  • 打赏
  • 举报
回复
请问楼主解决了没有啊?
我也遇到了这个问题
joy_liut 2010-02-09
  • 打赏
  • 举报
回复
引用 3 楼 sharetop 的回复:
哦,你是找不是加。看题不清,不好意思。

如果是这样,我觉得你自己说的第二个方法是正解,本来设置一个Tag就是让你方便找的。


Android的View同样也是可以setId(int)的~~
huangjinhu1 2009-12-31
  • 打赏
  • 举报
回复
帮顶
sharetop 2009-12-31
  • 打赏
  • 举报
回复
哦,你是找不是加。看题不清,不好意思。

如果是这样,我觉得你自己说的第二个方法是正解,本来设置一个Tag就是让你方便找的。
shenxiaolinil 2009-12-31
  • 打赏
  • 举报
回复
似乎你没有明白我的意思,现在是抛开资源文件的!所有VIEW都是用代码生成的
sharetop 2009-12-31
  • 打赏
  • 举报
回复
LayoutInflater mInflater = LayoutInflater.from(context);
View row = mInflater.inflate(R.layout.item_list_row, parent,false);

这样就可以从另一个资源layout配置中动态创建一个View,然后你可以加到你自己的layear里面了。

80,337

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧