android从string数组中随机抽取3个元素并弹窗单选框从3个元素中选择一项设置为textview内容
时间: 2024-03-02 19:48:51 浏览: 77
Android中实现为TextView添加多个可点击的文本
您可以按照以下步骤实现:
1. 在strings.xml文件中定义一个包含至少3个字符串的string数组,例如:
```xml
<string-array name="options">
<item>选项1</item>
<item>选项2</item>
<item>选项3</item>
<item>选项4</item>
</string-array>
```
2. 在代码中获取string数组,然后随机选择3个元素,例如:
```java
String[] options = getResources().getStringArray(R.array.options);
List<String> selectedOptions = new ArrayList<>();
Random random = new Random();
while (selectedOptions.size() < 3) {
String option = options[random.nextInt(options.length)];
if (!selectedOptions.contains(option)) {
selectedOptions.add(option);
}
}
```
3. 弹出单选框对话框,让用户从3个元素中选择一个,并将选择的元素设置为TextView的内容,例如:
```java
final TextView textView = findViewById(R.id.text_view);
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("请选择一个选项");
final String[] items = selectedOptions.toArray(new String[0]);
builder.setSingleChoiceItems(items, -1, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
String selectedOption = items[which];
textView.setText(selectedOption);
dialog.dismiss();
}
});
builder.show();
```
这样就可以实现从string数组中随机抽取3个元素并弹窗单选框让用户选择一个并将选择的元素设置为TextView的内容的功能了。
阅读全文