Android 如何使用AlertDialog更改主上下文中的EditText提示
EditText结果在layout.xml中已经有提示,但我想在中更改提示 EditText结果,但是上面的代码抛出一个NullPointerException,有什么问题吗 编辑:Android 如何使用AlertDialog更改主上下文中的EditText提示,android,Android,EditText结果在layout.xml中已经有提示,但我想在中更改提示 EditText结果,但是上面的代码抛出一个NullPointerException,有什么问题吗 编辑: }使用处理程序从alertDialog更新任何UI组件 public class AAA extends Activity { private EditText result; private String[] dropdownList = {"A123", "A456"}; private int checke
}使用处理程序从alertDialog更新任何UI组件
public class AAA extends Activity {
private EditText result;
private String[] dropdownList = {"A123", "A456"};
private int checkedItem = 0;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
result = (EditText) findViewById(R.id.editText1);
alert();
}
private void alert() {
new AlertDialog.Builder(this)
.setTitle("select")
.setSingleChoiceItems(dropdownList, checkedItem, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
result.setHint("some tips");
}
}).show();
}
你的
setContentView(…)在哪里?
contentView不是重点,我只是想知道如何在AlterDialogy中更改提示你能给我一个使用处理程序更改提示的示例吗?如果private EditText result=(EditText)findViewById(R.id.editText1)
在活动的onCreate方法之外,然后请在setContentView(…)
之后将其放入onCreate中,并抛出NullPointerException欢迎。你可以通过接受答案来结束问题。
public class AAA extends Activity {
private EditText result;
private String[] dropdownList = {"A123", "A456"};
private int checkedItem = 0;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
result = (EditText) findViewById(R.id.editText1);
alert();
}
private void alert() {
new AlertDialog.Builder(this)
.setTitle("select")
.setSingleChoiceItems(dropdownList, checkedItem, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
result.setHint("some tips");
}
}).show();
}
Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
result.setHint("some tips");
}
}
private void alert() {
new AlertDialog.Builder(this).setTitle("select")
.setSingleChoiceItems(dropdownList, checkedItem, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
handler.sendEmptyMessage(0);
}
}).show();
}