gpt4 book ai didi

java - 如何使用一组代码拥有多个微调器

转载 作者:行者123 更新时间:2023-11-30 11:43:15 25 4
gpt4 key购买 nike

全部 - 我的布局如下所示: enter image description here

我的目标是让这三个微调器出现在所有行上。现在他们只在圣詹姆斯(是的,这是大富翁)。每个微调器都有大量代码,从头开始为每一行创建一个全新的微调器是最困难的。我试图复制第一行,只更改文本:

    <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<RelativeLayout android:id="@+id/stjameslay"
android:layout_width="wrap_content"
android:layout_height="wrap_content">

<TextView
android:id="@+id/st_james_place"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/st_james"
android:padding="5dp"
android:textSize="6pt" />

<Spinner android:id="@+id/owner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawSelectorOnTop="true"
android:layout_toRightOf="@id/st_james_place"
android:layout_alignBaseline="@id/st_james_place" />
<Spinner android:id="@+id/houses"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawSelectorOnTop="true"
android:layout_toRightOf="@id/owner"
android:layout_alignBaseline="@id/st_james_place" />
<Spinner android:id="@+id/hotels"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawSelectorOnTop="true"
android:layout_toRightOf="@id/houses"
android:layout_alignBaseline="@id/st_james_place" />
</RelativeLayout>

<RelativeLayout android:id="@+id/balticavelay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/stjameslay">

<TextView
android:id="@+id/st_james_place"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/baltic"
android:padding="5dp"
android:textSize="6pt" />

<Spinner android:id="@+id/owner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawSelectorOnTop="true"
android:layout_toRightOf="@id/st_james_place"
android:layout_alignBaseline="@id/st_james_place" />
<Spinner android:id="@+id/houses"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawSelectorOnTop="true"
android:layout_toRightOf="@id/owner"
android:layout_alignBaseline="@id/st_james_place" />
<Spinner android:id="@+id/hotels"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawSelectorOnTop="true"
android:layout_toRightOf="@id/houses"
android:layout_alignBaseline="@id/st_james_place" />
</RelativeLayout>

<RelativeLayout android:id="@+id/boardwalklay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/balticavelay">

<TextView
android:id="@+id/st_james_place"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/boardwalk"
android:padding="5dp"
android:textSize="6pt" />

<Spinner android:id="@+id/owner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawSelectorOnTop="true"
android:layout_toRightOf="@id/st_james_place"
android:layout_alignBaseline="@id/st_james_place" />
<Spinner android:id="@+id/houses"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawSelectorOnTop="true"
android:layout_toRightOf="@id/owner"
android:layout_alignBaseline="@id/st_james_place" />
<Spinner android:id="@+id/hotels"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawSelectorOnTop="true"
android:layout_toRightOf="@id/houses"
android:layout_alignBaseline="@id/st_james_place" />
</RelativeLayout>
</RelativeLayout>

正如您从屏幕截图中看到的那样,微调器没有出现。我的想法是,由于微调器上的 id 相同,因此 Java 代码只会将额外的微调器视为重复项。有没有办法做到这一点,或者我是否必须为每一行和新的 Java 代码(owner2、houses2、hotels2 等)制作新的微调器?感谢您的时间和精力!

最佳答案

在我看来,您实际上需要将此作为 ListView 来执行。创建一个“列表项”布局文件来表示单个列表行,示例...

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/propertyLayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content">

<TextView android:id="@+id/propertyName"
... />
<Spinner android:id="@+id/owner"
... />
<Spinner android:id="@+id/houses"
... />
<Spinner android:id="@+id/hotels"
... />
</RelativeLayout>

然后您需要创建一个自定义的 Adapter 以将数据映射/绑定(bind)到每个小部件并将其与 ListView 一起使用。

关于java - 如何使用一组代码拥有多个微调器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11370685/

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