微调器不工作。 当我只是在设计模式下玩它时,它不显示箭头,在我以某种方式用一些代码实现它之后它不显示文本。
<Spinner
android:id="@+id/spinner"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
Spinner spinner;
ArrayList spinnerArrayList;
ArrayAdapter spinnerAdapter;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
spinner = findViewById(R.id.spinner);
spinnerArrayList = new ArrayList();
spinnerAdapter = new ArrayAdapter(this,android.R.layout.simple_spinner_item,spinnerArrayList);
spinnerAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(spinnerAdapter);
spinnerArrayList.add("Guitar");
spinnerArrayList.add("Drums");
spinnerArrayList.add("Keyboard");
}
最佳答案
您正在做的是在设置适配器后更改 ArrayList。 所以适配器不知道数据被改变了。
你可以通过两种方式解决这个问题:
在设置适配器之前在 ArrayList 中添加元素
在代码末尾或每当您更改 ArrayList 时使用 notifyDataSetChanged()
像这样:spinnerAdapter.notifyDataSetChanged()
关于java - 微调器不显示数组和文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62603502/