gpt4 book ai didi

android - 使用 strings.xml 中的文本和值填充 ListView

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:58:20 26 4
gpt4 key购买 nike

我是 android 的新手,想要填充以 id 作为值和字符串作为标题的 ListView 项目。我所能找到的搜索是他们建议使用像这样的字符串数组:

<string-array name="test">
<item>first item</item>
<item>second item</item>
</string-array>

我正在寻找的是这样的东西:

<string-array name="test">
<item value="1">first item</item>
<item value="2">second item</item>
</string-array>

就像html中selectoption标签

最佳答案

创建一个新的 Activity (这将生成一个 xml 文件(布局)和一个 Java 类。

在布局上,创建一个在 int 上有一个 ListView 的 Layot:

<?xml version=”1.0” encoding=”utf-8”?>
<LinearLayout xmlns:android=”http://schemas.android.com/apk/res/android”
android:layout_width=”match_parent”
android:layout_height=”match_parent”
android:orientation=”vertical” >

<ListView
android:id=”@+id/itemList”
android:layout_width=”match_parent”
android:layout_height=”wrap_content”
android:entries="@array/test"
/>

在您的 Activity 中,您必须:

  • 创建一个 ListView 变量
  • 将您的观点映射到此变量的 XML 上
  • 从资源数组适配器中获取字符串列表
  • 实例化一个适配器(一个你必须在你的 ListView 上设置的对象来获取你的列表(在你的情况下,字符串)并将它们添加到你的回收器 View 中。你可以为你的适配器创建一个自定义类,但是当处理字符串,您可以使用一个简单的 ArrayAdapter)。
  • 在 ListView 对象上设置适配器

要完成所有这些事情,请将其放入代码中:

public class MyActivity extends Activity {

// Creating variable
ListView listView;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

// Mapping with your XML view
listView = (ListView) findViewById(R.id.itemList);

/// Getting list of Strings from your resource
String[] testArray = getResources().getStringArray(R.array.test);
List<String> testList = Arrays.asList(test);

// Instanciating Adapter
ArrayAdapter<String> adapter = new ArrayAdapter<>(getBaseContext(),
android.R.layout.simple_list_item_1, testList);

// setting adapter on listview
listview.setAdapter(adapter);
}
}

关于android - 使用 strings.xml 中的文本和值填充 ListView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39019824/

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