我希望有一个始终显示在微调器中的固定值,并且当单击微调器时,不应在下拉选择中列出该值。 到目前为止我有以下内容
Definition XML:
<Spinner
android:layout_width="76dp"
android:layout_height="40dp"
android:id="@+id/right_shift"
android:layout_row="0"
android:layout_column="0"/>
Java:
final Spinner right = (Spinner) findViewById(R.id.right_shift)
ArrayList<String> rightShift = new ArrayList<String>();
rightShift.add(" >>"); //THIS SHOULD BE THE VALUE THAT IS ALWAYS DISPLAYED
for (int i=0; i<5; i++)
...//add other values to arraylist
...//set values of arraylist to spinner
right.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
right.setSelection(0);
}
@Override
public void onNothingSelected(AdapterView<?> adapterView) {
}
});
但是,当单击微调器时,预选的项目将再次显示在下拉列表中,并且 right.setselection(0)
的执行速度不够快,因此我仍然会看到选定的项目大约 0.5秒...还有其他/更简单的方法来执行此操作吗?
最佳答案
你可以添加 机器人:提示=“>>” 在 xml 和 java 中将微调器中的默认位置设置为 -1。
关于java - android java设置修复微调器的默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18343394/