我正在尝试制作一个简单的应用程序,但我遇到了问题。我有一个由 4 个字符串组成的微调器 - 日期、日期、时间、位置。在微调器下,有 7 个从星期一到太阳的日期复选框,日期的编辑文本,时间的编辑文本和位置的编辑文本(纬度和经度)。如果我在微调器中选择“天”,如何使日期、时间和位置字段不可编辑?如果我在微调器中选择另一个字符串,反之亦然?意味着如果我选择时间,只能使用时间的edittext,另外3个变得不可编辑。som1 请帮助我,tq..
问问题
1060 次
2 回答
2
您可以使用禁用/启用 EditText
EditText.setEnabled(false);
或者您也可以通过将 setKeyListener null 设置为来禁用 EditText:
EditText.setKeyListener(null);
例如 :
private static final String[] weekitems={"day","date","time","location"};
daySpinner.setOnItemSelectedListener(
new OnItemSelectedListener() {
@Override
public void onItemSelected(
AdapterView<?> parent, View view, int pos, long id
) {
String strsel=weekitems[pos];
if(strsel.equalsIgnoreCase("day")){
//disable EditText here
}else{
//enable EditText here
}
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {}
}
);
于 2012-12-24T01:38:00.213 回答
1
您可以使用以下方法禁用 EditText:
EditText.setEnabled(false);
你需要实现OnItemSelectedListener
,然后在你的onItemSelected
方法中你可以切换位置:
public void onItemSelected(AdapterView<?> parent, View v, int position,
long id) {
switch(position){
case 0:
enableAll();
EditText.setEnabled(false);
break;
// etc.
}
}
于 2012-12-24T01:32:57.950 回答