gpt4 book ai didi

android - 微调器,如果我不点击则不设置值(android)

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

我有一个微调器:

 spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int childposition, long id) {
textView.setText(spinner.getSelectedItem().toString());
}

@Override
public void onNothingSelected(AdapterView<?> parent) {
textView.setText("");
}
});

在上方您会看到 textView - 是我的文本对象。单击它时,我在 textView 中显示了一个文本项微调器。如果我不点击微调器,那么我的 textView 必须是 textView.setText("");

但微调器总是在我的 textView 中设置文本,即使我没有选择微调器。

问题

我怎样才能做到这一点?:

  • 如果我不选择项目微调器,textView 为空:textView.setText("");
  • 如果我确实选择了项目微调器,textView 会得到:textView.setText(spinner.getSelectedItem().toString());

最佳答案

String item = parent.getItemAtPosition(childposition).toString(); //Get selected item

if(item.equals("spinner")){ // Check if it equals spinner

textView.setText(item); // Set text to item

}else{

textView.setText(""); // If it doesn't equal spinner set text to ""

}

如果我对这个问题的理解是正确的,用这个代替 textView.setText(spinner.getSelectedItem().toString()); 并删除 onNothingSelected 的内容应该可以解决问题。

更新

我终于明白你的意思了。为此,请像这样创建微调器并在字符串数组资源中添加“”作为首选:

String[] newArray = getResources().getStringArray(R.array.yourArray);
List<String> myResArrayList = Arrays.asList(newArray);
ArrayList<String> spinnerItems = new ArrayList<String>(myResArrayList);

//Making adapter with ArrayList instead of String[] allows us to add/remove items later in the code

Spinner spinner = (Spinner) findViewById(R.id.spinner);
// Create an ArrayAdapter using the string array and a default spinner layout
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, spinnerItems);
// Specify the layout to use when the list of choices appears
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
// Apply the adapter to the spinner
spinner.setAdapter(adapter);

spinnerItems.remove(0);
adapter.notifyDataSetChanged(); // Here we remove the first choice which is "" so the user won't be able to select empty.

关于android - 微调器,如果我不点击则不设置值(android),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32460548/

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