Java 自定义AlertDialog未在runonuithread方法中显示
这是密码…请告诉我哪里出错了。。另外,我正在为listview设置一个适配器,它包含在视图v1中…这都是在smartfox服务器的扩展响应中完成的…然后在UI线程上执行以下过程Java 自定义AlertDialog未在runonuithread方法中显示,java,android,Java,Android,这是密码…请告诉我哪里出错了。。另外,我正在为listview设置一个适配器,它包含在视图v1中…这都是在smartfox服务器的扩展响应中完成的…然后在UI线程上执行以下过程 runOnUiThread(new Runnable() { @Override public void run() { // TODO Au
runOnUiThread(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
alert();
}
});
public void alert(){
AlertDialog.Builder ab=new AlertDialog.Builder(RegActivity.this);
LayoutInflater linf=(LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);
View v1=linf.inflate(R.layout.proj_list, null);
ab.setView(v1);
ab.setTitle("Select a group");
ListView lvprojlist=(ListView) findViewById(R.id.projdisplaylist);
adplist=new ArrayAdapter<String>(RegActivity.this, R.layout.list_item, R.id.rowtext, projlist);
lvprojlist.setAdapter(adplist);
ab.setCancelable(false).setPositiveButton("Confirm", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
dialog.dismiss();
}
})
.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
dialog.dismiss();
}
});
ab.create();
ab.show();
}
你必须先按相反的顺序改变它
ab.setTitle("Select a group");
ListView lvprojlist=(ListView) v1.findViewById(R.id.projdisplaylist);
ab.setView(v1);
您必须在查找列表视图的id后设置视图
也不要使adplist全局变量。让它静止
ArrayAdapter<String >adplist=new ArrayAdapter<String>(RegActivity.this, R.layout.list_item, R.id.rowtext, projlist);
ArrayAdapteradplist=新的ArrayAdapter(RegActivity.this,R.layout.list_项,R.id.rowtext,projlist);
它的lvprojlist.setAdapter(adplist);
ArrayAdapter<String >adplist=new ArrayAdapter<String>(RegActivity.this, R.layout.list_item, R.id.rowtext, projlist);