我创建了一个自定义对话框,该对话框ListView
模拟了一个Spinner
显示,最初它以“选择性别”值开始。
当对话框打开时,它会提示您进行选择(就像微调器一样)。如果再次选择该选项,它会显示相同的选项,但不指示已选择了哪个选项。
示例:
默认值:“选择性别”
对话框打开,没有选择
用户选择:“男性”
用户重新打开对话框...
对话框打开,没有选择
(我希望它选择“男性”,因为这是他们最后一次选择)
到目前为止,这是我的代码:
genderItems = getResources().getStringArray(R.array.gender_array);
genderAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_dropdown_item, genderItems);
genderDrop.setOnTouchListener(new View.OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
if(event.getAction() == MotionEvent.ACTION_DOWN) {
Builder genderBuilder = new AlertDialog.Builder(Register.this)
.setTitle(R.string.gender_prompt)
.setAdapter(genderAdapter, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
inputGender.setText(genderItems[which]);
dialog.dismiss();
}
});
AlertDialog genderAlert = genderBuilder.create();
genderAlert.show();
genderAlert.getListView().setSelection(0);
}
return false;
}
});
genderAlert.getListView().setSelection(0)
未设置默认选择为“男”
genderAlert.getListView().setSelection(1)
未设置默认选择为“女”