Android 如何在EditText中从AlertDialog列表返回数据
我有一个可点击的Android 如何在EditText中从AlertDialog列表返回数据,android,dialog,Android,Dialog,我有一个可点击的EditText,当我点击EditText时,一个对话框打开。对话框中有一个列表,该列表由保存在databaseHelper类中的数据填充 当用户从对话框中选择一个项目时,对话框应关闭,所选数据应插入EditText AlertDialog ad; EditText selectdata; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated metho
EditText
,当我点击EditText
时,一个对话框打开。对话框中有一个列表,该列表由保存在databaseHelper类中的数据填充
当用户从对话框中选择一个项目时,对话框应关闭,所选数据应插入EditText
AlertDialog ad;
EditText selectdata;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.Main_layout);
final DBHelper db = new DBHelper(this);
selectdata = (EditText) findViewById(R.id.tfselectcategory);
selectdata.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
showDialog();
}
});
}
private void showDialog(){
DBHelper db = new DBHelper(getApplicationContext());
final AlertDialog.Builder dialog = new AlertDialog.Builder(this);
dialog.setTitle("Choose Category");
// Spinner Drop down elements
List<String> lables = db.sniperdata();
// Creating adapter for spinner
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this,
android.R.layout.simple_dropdown_item_1line, lables);
dialog.setAdapter(dataAdapter, null);
AlertDialog d = dialog.create();
d.show();
}
AlertDialog广告;
编辑文本选择数据;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
//TODO自动生成的方法存根
super.onCreate(savedInstanceState);
setContentView(右布局、主布局);
final DBHelper db=新的DBHelper(this);
selectdata=(EditText)findViewById(R.id.tfselectcategory);
selectdata.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
//TODO自动生成的方法存根
showDialog();
}
});
}
私有void showDialog(){
DBHelper db=newdbhelper(getApplicationContext());
最终AlertDialog.Builder对话框=新建AlertDialog.Builder(此);
对话框.setTitle(“选择类别”);
//微调器下拉元素
列表标签=db.sniperdata();
//为微调器创建适配器
ArrayAdapter dataAdapter=新的ArrayAdapter(此,
android.R.layout.simple_下拉列表_项目线、标签);
setAdapter(dataAdapter,null);
AlertDialog d=dialog.create();
d、 show();
}
为对话框列表项设置clickListner
dialog.setAdapter(dataAdapter,new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int item) {
// write your code for dialog dismiss.
Log.e("selected item=",lables.get(item));
}
});
为对话框列表项设置clickListner
dialog.setAdapter(dataAdapter,new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int item) {
// write your code for dialog dismiss.
Log.e("selected item=",lables.get(item));
}
});
您必须为对话框界面的
OnClickListener
编码
private void showDialog(){
DBHelper db = new DBHelper(getApplicationContext());
final AlertDialog.Builder dialog = new AlertDialog.Builder(this);
dialog.setTitle("Choose Category");
// Spinner Drop down elements
final List<String> lables = db.sniperdata();
// Creating adapter for spinner
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this,
android.R.layout.simple_dropdown_item_1line, lables);
dialog.setAdapter(dataAdapter, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int ind) {
selectdata.setText(lables.get(ind));
}
});
AlertDialog d = dialog.create();
d.show();
}
private void showDialog(){
DBHelper db=newdbhelper(getApplicationContext());
最终AlertDialog.Builder对话框=新建AlertDialog.Builder(此);
对话框.setTitle(“选择类别”);
//微调器下拉元素
最终列表标签=db.sniperdata();
//为微调器创建适配器
ArrayAdapter dataAdapter=新的ArrayAdapter(此,
android.R.layout.simple_下拉列表_项目线、标签);
setAdapter(dataAdapter,新的DialogInterface.OnClickListener(){
@凌驾
公共void onClick(对话框接口对话框,int ind){
选择data.setText(lables.get(ind));
}
});
AlertDialog d=dialog.create();
d、 show();
}
试试这个。您必须为对话框界面的
OnClickListener
编码
private void showDialog(){
DBHelper db = new DBHelper(getApplicationContext());
final AlertDialog.Builder dialog = new AlertDialog.Builder(this);
dialog.setTitle("Choose Category");
// Spinner Drop down elements
final List<String> lables = db.sniperdata();
// Creating adapter for spinner
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this,
android.R.layout.simple_dropdown_item_1line, lables);
dialog.setAdapter(dataAdapter, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int ind) {
selectdata.setText(lables.get(ind));
}
});
AlertDialog d = dialog.create();
d.show();
}
private void showDialog(){
DBHelper db=newdbhelper(getApplicationContext());
最终AlertDialog.Builder对话框=新建AlertDialog.Builder(此);
对话框.setTitle(“选择类别”);
//微调器下拉元素
最终列表标签=db.sniperdata();
//为微调器创建适配器
ArrayAdapter dataAdapter=新的ArrayAdapter(此,
android.R.layout.simple_下拉列表_项目线、标签);
setAdapter(dataAdapter,新的DialogInterface.OnClickListener(){
@凌驾
公共void onClick(对话框接口对话框,int ind){
选择data.setText(lables.get(ind));
}
});
AlertDialog d=dialog.create();
d、 show();
}
试试这个