gpt4 book ai didi

Android:如何按类型查找 View

转载 作者:IT老高 更新时间:2023-10-28 23:29:31 27 4
gpt4 key购买 nike

好的,所以我有一个类似于以下示例的布局 xml:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/tile_bg" >

<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingTop="10dp" >

<LinearLayout
android:id="@+id/layout_0"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >

<!-- view stuff here -->
</LinearLayout>

<!-- more linear layouts as siblings to this one -->

</LinearLayout>

我实际上有大约 7 个 LinearLayout 项目,每个项目的 id 从 layout_0 等增加。我希望能够获取根 LinearLayout 下的所有 LinearLayout 项目。我是否需要在根上放置一个 id 并通过 id 找到所有其他人,或者我可以按类型获取它们。

我用来膨胀布局的代码是:

View view = (View) inflater.inflate(R.layout.flight_details, container, false);

我在某处读到您可以迭代 ViewGroup 的子级,但这只是一个 View 。

按类型获得一堆 child 的最佳方法是什么?

最佳答案

这应该会让你走上正轨。

LinearLayout rootLinearLayout = (LinearLayout) findViewById(R.id.rootLinearLayout);
int count = rootLinearLayout.getChildCount();
for (int i = 0; i < count; i++) {
View v = rootLinearLayout.getChildAt(i);
if (v instanceof LinearLayout) {
...
}
}

关于Android:如何按类型查找 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13887003/

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