我需要在垂直方向上获取LinearLayout中的动态添加视图位置。 例如,我在LinearLayout上动态添加了4个TextView,然后我需要在第三个位置更改文本颜色的位置,颜色将会不同。如何通过获取添加视图的位置来实现它。如何获取在LinearLayout上动态添加视图的位置
1
A
回答
1
你可以这样做就像是
ViewGroup parent;
int position;
for(int i = 0; i < parent.getChildCount(); ++i) {
int currentViewId = parent.getChildAt(i).getId();
if(currentViewId == wantendViewId) {
position = i;
}
}
这是(在我看来)最简单的方法
0
如果你总是知道TextViews在你的LinearLayout的数量,你可以使用函数getChildAt(int position)
。这会返回一个View
,然后您可以将其转换为TextView
以便能够执行所需的操作。
如果你不知道元素的数量,你可以设置每个TextView中的ID(为了能够识别特定的一个),然后运行通过他们这样的:
for(View view : myLinearLayout)
if(view instanceof TextView && view.getId().equals(idToSearchFor))
//Do what needs to be done.
0
我见下列选项:
- 声明一些ID在资源的
<item type="id">first</item>
形式,并将其分配给 意见,增加布局,使用后正常findViewById()
机制 - 通过
setTag
方法,之后使用findViewWithTag
机制的意见 - Remeber位置分配一些标签的观点,你要添加到布局,并使用它们争夺
getChildAt
方法
0
我简单的选择。
假设你添加
视图V; //任何观点
linearlayout.addview(V); //添加布局
虽然ü要修改视图。
simpaly删除旧视图。
linearlayout.removeView(v);
添加新的更新视图对象
V-更新的新视图
linearlayout.addview(V);
相关问题
- 1. 如何动态添加视图到LinearLayout?
- 2. 如何在TextView上动态添加LinearLayout
- 3. 如何在Android上动态添加LinearLayout?
- 4. 如何在动态添加视图后获取StackLayout的高度?
- 5. 如何在地图上获取动态位置的方向iphone
- 6. 如何获取上一个滚动视图位置,滚动视图
- 7. 如何动态添加视图或在其他组件上添加视图?
- 8. LinearLayout使用动画添加视图
- 9. 动态添加textViews到linearLayout
- 10. 获取视图的位置
- 11. 动态添加视图水平LinearLayout离开屏幕
- 12. 如何在linearlayout的左上角位置设置图像?
- 13. Android获取视图在水平滚动视图中的位置
- 14. 在视图上方动态添加滚动视图iphone
- 15. 如何从视图中获取位置?
- 16. 如何在水平滚动视图中获取位置
- 17. LinearLayout - 定位视图
- 18. 如何动态添加页脚视图
- 19. Android动态列表视图添加位置
- 20. 如何在回收站视图行中添加动态视图
- 21. 动态添加的LinearLayout成的RelativeLayout
- 22. Android:如何不重叠动态视图? +视图的动态位置
- 23. LinearLayout - 滚动时动态添加内容
- 24. 如何在添加到linearlayout时保持片段位置
- 25. 如何将视图添加到特定位置的滚动视图?
- 26. 添加视图动态
- 27. Android - 动态添加视图
- 28. 我们可以保存在LinearLAyout中动态添加的视图吗?
- 29. 如何在动态布局上动态地添加视图,自动将旧视图向下移动
- 30. 如何获取地图上单击位置的地理位置?