gpt4 book ai didi

android - 一种识别 subview 的简单方法

转载 作者:行者123 更新时间:2023-11-29 21:57:14 27 4
gpt4 key购买 nike

我在运行时向布局添加 View 。你的观点是这样的:

<LinearLayout android:id="@+id/ll1">
<LinearLayout android:id="@+id/ll2" >
<ImageView android:id="@+id/iv1" />
<TextView android:id="@+id/tv1"/>
<ImageView android:id="@+id/iv2"/>
</LinearLayout>

(为了简单起见,我做了很多事情)

现在在代码中,我将任意数量的这些添加到布局中。那么我如何在每次添加此 View 时访问 ImageView 和 TextView?

目前我有这种复杂的方式遍历每个 child 并做一个

if (View instanceof ImageView)

如果我要调用 parentView.getChildAt(0)(父 View 是 ll2),这是否总是返回 iv1?在“1”时,这会始终返回 tv1 吗?

然后我一直将这些对象存储在一个向量中,以便稍后调用它们。

有更简单的方法吗?就像我第一次添加整个东西时,有没有一种方法可以只设置 ImageView 的来源,并设置 TextView 的文本,而不必通过这种方式找到它们?

最佳答案

当你膨胀你的 View 时,找到它的 child 并为每个 child 设置一个特定的标签(使用 setTag() )。当你需要识别时,使用 getTag() .你可以在What is the main purpose of setTag() getTag() methods of View? 中找到关于getTag 和setTag 用法的好主意。和 Android:setTag() and getTag() usage for changing the controls..

关于android - 一种识别 subview 的简单方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12946043/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com