获取警告对话框中选择价值EDITTEXT [英] Get the alert dialog selected value to edittext
本文介绍了获取警告对话框中选择价值EDITTEXT的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我下面这个教程 HTTP://labs.makemachine。净/ 2010/03 / Android的多选,对话框/ ,我想要得到选定警报对话框的价值我EditText上任何一个可以帮助我,我需要得到的EditText细节
公共类PagesFragment扩展片段{
/ *私人PopupWindow PW;
私人布尔扩大; //所选择的值是否显示完全或缩短再presentatn存储信息
公共静态布尔[] checkSelected; * /
私人微调spfrom;
私人微调波及;
私人微调spheightfrom;
私人微调spheightto;
私人微调splang;
私人微调US preLG;
私人微调spmrgstatus;
私人微调spcountry;
私人微调spstate;
私人微调spcity;
私人的EditText电视;
私人ImageView的btnmother;
私人ImageView的btnrelgn;
受保护的CharSequence [] _options = {水星,金星,大地,火星人,朱庇特,土星,天王星,海王星};
保护布尔[] _selections =新的布尔[_options.length]
保护按钮_optionsButton;
受保护的EditText inputTemp;
私人的EditText郎;
私人的ImageButton btnlangs;
静态对话框D组;
公共PagesFragment(){}
@覆盖
公共查看onCreateView(LayoutInflater充气,容器的ViewGroup,
捆绑savedInstanceState){
//字符串strText的= getArguments()的getString(位置)。
查看rootView = inflater.inflate(R.layout.search_profile,集装箱,假);
LANG =(EditText上)rootView.findViewById(R.id.edtmothertongue);
btnlangs =(的ImageButton)rootView.findViewById(R.id.btnmothertongue);
spfrom =(微调)rootView.findViewById(R.id.spinneragefrom);
波及=(微调)rootView.findViewById(R.id.spinnerageto);
spheightfrom =(微调)rootView.findViewById(R.id.spinnerhfrom);
spheightto =(微调)rootView.findViewById(R.id.spinnerhto);
//splang=(Spinner)rootView.findViewById(R.id.spinnerlang);
//s$p$plg=(Spinner)rootView.findViewById(R.id.spinnerrel);
spmrgstatus =(微调)rootView.findViewById(R.id.spinnermrgstatus);
spcountry =(微调)rootView.findViewById(R.id.spinnercountry);
spstate =(微调)rootView.findViewById(R.id.spinnerstate);
spcity =(微调)rootView.findViewById(R.id.spinnercity);
btnlangs.setOnClickListener(新OnClickListener(){
@覆盖
公共无效的onClick(视图v){
// TODO自动生成方法存根
的ShowDialog(0);
}
});
@覆盖
受保护的对话框onCreateDialog(INT ID){
返回
新AlertDialog.Builder(本)
.setTitle(行星)
.setMultiChoiceItems(_options,_selections,新DialogSelectionClickHandler())
.setPositiveButton(OK,新DialogButtonClickHandler())
。创建();
}
公共类DialogSelectionClickHandler实现DialogInterface.OnMultiChoiceClickListener {
公共无效的onClick(DialogInterface对话框中,单击诠释,布尔选择){
Log.i(ME,_options [点击] +选择:+选择);
}
}
公共类DialogButtonClickHandler实现DialogInterface.OnClickListener {
公共无效的onClick(DialogInterface对话框,点击INT){
开关(点击){
案例DialogInterface.BUTTON_POSITIVE:
inputTemp.setText();
的for(int i = 0; I< _options.length;我++){
如果(_selections [I]){
如果(。inputTemp.getText()的toString()长度()大于0){
inputTemp.setText(inputTemp.getText()的toString()修剪()+,+ _选项[I]);
}其他{
inputTemp.setText(_options [I]);
}
}
}
打破;
}
}
}
保护无效printSelectedPlanets(){
的for(int i = 0; I< _options.length;我++){
Log.i(ME,_options [我] +选择:+ _selections [I]);
}
}
//在点击按钮显示对话框
ArrayAdapter< CharSequence的>适配器1 = ArrayAdapter.createFromResource(getActivity()。getBaseContext(),
R.array.height_from,R.layout.my_spinner);
adapter1.setDropDownViewResource(android.R.layout.select_dialog_singlechoice);
spheightfrom.setAdapter(适配器1);
ArrayAdapter< CharSequence的>适配器2 = ArrayAdapter.createFromResource(getActivity()。getBaseContext(),
R.array.height_to,R.layout.my_spinner);
adapter2.setDropDownViewResource(android.R.layout.select_dialog_singlechoice);
spheightto.setAdapter(适配器2);
ArrayAdapter< CharSequence的>适配器3 = ArrayAdapter.createFromResource(getActivity()。getBaseContext(),
R.array.age_from,R.layout.my_spinner);
adapter3.setDropDownViewResource(android.R.layout.select_dialog_singlechoice);
spfrom.setAdapter(适配器3);
ArrayAdapter< CharSequence的> adapter10 = ArrayAdapter.createFromResource(getActivity()。getBaseContext(),
R.array.age_to,R.layout.my_spinner);
adapter3.setDropDownViewResource(android.R.layout.select_dialog_singlechoice);
spto.setAdapter(adapter10);
btnrelgn =(ImageView的)rootView.findViewById(R.id.btnrelgn);
btnrelgn.setOnClickListener(新OnClickListener(){
@覆盖
公共无效的onClick(查看为arg0){
// TODO自动生成方法存根
意向意图=新的意图(getActivity(),ReligionList.class);
startActivity(意向);
}
});
ArrayAdapter< CharSequence的> adapter5 = ArrayAdapter.createFromResource(getActivity()。getBaseContext(),
R.array.mrgstatus,R.layout.my_spinner);
adapter5.setDropDownViewResource(android.R.layout.select_dialog_singlechoice);
spmrgstatus.setAdapter(adapter5);
ArrayAdapter< CharSequence的> adapter6 = ArrayAdapter.createFromResource(getActivity()getBaseContext(),R.array.country,R.layout.my_spinner。);
adapter6.setDropDownViewResource(android.R.layout.select_dialog_singlechoice);
spcountry.setAdapter(adapter6);
ArrayAdapter< CharSequence的> adapter7 = ArrayAdapter.createFromResource(getActivity()getBaseContext(),R.array.state,R.layout.my_spinner。);
adapter7.setDropDownViewResource(android.R.layout.select_dialog_singlechoice);
spstate.setAdapter(adapter7);
ArrayAdapter< CharSequence的> adapter8 = ArrayAdapter.createFromResource(getActivity()getBaseContext(),R.array.city,R.layout.my_spinner。);
adapter8.setDropDownViewResource(android.R.layout.select_dialog_singlechoice);
spcity.setAdapter(adapter8);
返回rootView;
}
}
解决方案
首先,你必须初始化的EditText中的onCreate(),并设置或更改值在积极的按钮点击:
示例:
受保护的CharSequence [] _options = {水星,金星,大地,火星人,朱庇特,土星,天王星,海王星 };
保护布尔[] _selections =新的布尔[_options.length]
保护按钮_optionsButton;
受保护的EditText inputTemp;
@覆盖
公共无效的onCreate(包savedInstanceState){
super.onCreate(savedInstanceState);
的setContentView(R.layout.main);
inputTemp =(EditText上)findViewById(R.id.edittexts);
_optionsButton =(按钮)findViewById(R.id.button);
_optionsButton.setOnClickListener(新ButtonClickHandler());
}
公共类ButtonClickHandler实现View.OnClickListener {
公共无效的onClick(视图查看){
的ShowDialog(0);
}
}
@覆盖
受保护的对话框onCreateDialog(INT ID){
返回
新AlertDialog.Builder(本)
.setTitle(行星)
.setMultiChoiceItems(_options,_selections,新DialogSelectionClickHandler())
.setPositiveButton(OK,新DialogButtonClickHandler())
。创建();
}
公共类DialogSelectionClickHandler实现DialogInterface.OnMultiChoiceClickListener {
公共无效的onClick(DialogInterface对话框中,单击诠释,布尔选择){
Log.i(ME,_options [点击] +选择:+选择);
}
}
公共类DialogButtonClickHandler实现DialogInterface.OnClickListener {
公共无效的onClick(DialogInterface对话框,点击INT){
开关(点击){
案例DialogInterface.BUTTON_POSITIVE:
inputTemp.setText();
的for(int i = 0; I< _options.length;我++){
如果(_selections [I]){
如果(。inputTemp.getText()的toString()长度()大于0){
inputTemp.setText(inputTemp.getText()的toString()修剪()+,+ _选项[I]);
}其他{
inputTemp.setText(_options [I]);
}
}
}
打破;
}
}
}
I am following this tutorial http://labs.makemachine.net/2010/03/android-multi-selection-dialogs/ and I want to get selected value of alert dialog to my edittext can any one help me with that, I need to get details in edittext
public class PagesFragment extends Fragment{
/*private PopupWindow pw;
private boolean expanded; //to store information whether the selected values are displayed completely or in shortened representatn
public static boolean[] checkSelected;*/
private Spinner spfrom;
private Spinner spto;
private Spinner spheightfrom;
private Spinner spheightto;
private Spinner splang;
private Spinner sprelg;
private Spinner spmrgstatus;
private Spinner spcountry;
private Spinner spstate;
private Spinner spcity;
private EditText tv;
private ImageView btnmother;
private ImageView btnrelgn;
protected CharSequence[] _options = {"Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune"};
protected boolean[] _selections = new boolean[_options.length];
protected Button _optionsButton;
protected EditText inputTemp;
private EditText lang;
private ImageButton btnlangs;
static Dialog d ;
public PagesFragment(){}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
//String strtext = getArguments().getString("position");
View rootView = inflater.inflate(R.layout.search_profile, container, false);
lang = (EditText) rootView.findViewById(R.id.edtmothertongue);
btnlangs = (ImageButton) rootView.findViewById(R.id.btnmothertongue);
spfrom=(Spinner)rootView.findViewById(R.id.spinneragefrom);
spto=(Spinner)rootView.findViewById(R.id.spinnerageto);
spheightfrom=(Spinner)rootView.findViewById(R.id.spinnerhfrom);
spheightto=(Spinner)rootView.findViewById(R.id.spinnerhto);
//splang=(Spinner)rootView.findViewById(R.id.spinnerlang);
//sprelg=(Spinner)rootView.findViewById(R.id.spinnerrel);
spmrgstatus=(Spinner)rootView.findViewById(R.id.spinnermrgstatus);
spcountry=(Spinner)rootView.findViewById(R.id.spinnercountry);
spstate=(Spinner)rootView.findViewById(R.id.spinnerstate);
spcity=(Spinner)rootView.findViewById(R.id.spinnercity);
btnlangs.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
showDialog(0);
}
});
@Override
protected Dialog onCreateDialog(int id) {
return
new AlertDialog.Builder(this)
.setTitle("Planets")
.setMultiChoiceItems(_options, _selections, new DialogSelectionClickHandler())
.setPositiveButton("OK", new DialogButtonClickHandler())
.create();
}
public class DialogSelectionClickHandler implements DialogInterface.OnMultiChoiceClickListener {
public void onClick(DialogInterface dialog, int clicked, boolean selected) {
Log.i("ME", _options[clicked] + " selected: " + selected);
}
}
public class DialogButtonClickHandler implements DialogInterface.OnClickListener {
public void onClick(DialogInterface dialog, int clicked) {
switch (clicked) {
case DialogInterface.BUTTON_POSITIVE:
inputTemp.setText("");
for (int i = 0; i < _options.length; i++) {
if(_selections[i]){
if(inputTemp.getText().toString().length()>0){
inputTemp.setText(inputTemp.getText().toString().trim()+","+_options[i]);
}else{
inputTemp.setText(_options[i]);
}
}
}
break;
}
}
}
protected void printSelectedPlanets(){
for( int i = 0; i < _options.length; i++ ){
Log.i( "ME", _options[ i ] + " selected: " + _selections[i] );
}
}
// on click of button display the dialog
ArrayAdapter<CharSequence> adapter1 = ArrayAdapter.createFromResource(getActivity().getBaseContext(),
R.array.height_from, R.layout.my_spinner);
adapter1.setDropDownViewResource(android.R.layout.select_dialog_singlechoice);
spheightfrom.setAdapter(adapter1);
ArrayAdapter<CharSequence> adapter2 = ArrayAdapter.createFromResource(getActivity().getBaseContext(),
R.array.height_to, R.layout.my_spinner);
adapter2.setDropDownViewResource(android.R.layout.select_dialog_singlechoice);
spheightto.setAdapter(adapter2);
ArrayAdapter<CharSequence> adapter3 = ArrayAdapter.createFromResource(getActivity().getBaseContext(),
R.array.age_from, R.layout.my_spinner);
adapter3.setDropDownViewResource(android.R.layout.select_dialog_singlechoice);
spfrom.setAdapter(adapter3);
ArrayAdapter<CharSequence> adapter10 = ArrayAdapter.createFromResource(getActivity().getBaseContext(),
R.array.age_to, R.layout.my_spinner);
adapter3.setDropDownViewResource(android.R.layout.select_dialog_singlechoice);
spto.setAdapter(adapter10);
btnrelgn=(ImageView)rootView.findViewById(R.id.btnrelgn);
btnrelgn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent intent=new Intent(getActivity(),ReligionList.class);
startActivity(intent);
}
});
ArrayAdapter<CharSequence> adapter5 = ArrayAdapter.createFromResource(getActivity().getBaseContext(),
R.array.mrgstatus, R.layout.my_spinner);
adapter5.setDropDownViewResource(android.R.layout.select_dialog_singlechoice);
spmrgstatus.setAdapter(adapter5);
ArrayAdapter<CharSequence> adapter6=ArrayAdapter.createFromResource(getActivity(). getBaseContext(), R.array.country,R.layout.my_spinner);
adapter6.setDropDownViewResource(android.R.layout.select_dialog_singlechoice);
spcountry.setAdapter(adapter6);
ArrayAdapter<CharSequence> adapter7=ArrayAdapter.createFromResource(getActivity(). getBaseContext(), R.array.state,R.layout.my_spinner);
adapter7.setDropDownViewResource(android.R.layout.select_dialog_singlechoice);
spstate.setAdapter(adapter7);
ArrayAdapter<CharSequence> adapter8=ArrayAdapter.createFromResource(getActivity(). getBaseContext(), R.array.city,R.layout.my_spinner);
adapter8.setDropDownViewResource(android.R.layout.select_dialog_singlechoice);
spcity.setAdapter(adapter8);
return rootView;
}
}
解决方案
First you have to initialize EditText in onCreate() and set or change value at positive button clicked :
Example :
protected CharSequence[] _options = {"Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune"};
protected boolean[] _selections = new boolean[_options.length];
protected Button _optionsButton;
protected EditText inputTemp;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
inputTemp = (EditText) findViewById(R.id.edittexts);
_optionsButton = (Button) findViewById(R.id.button);
_optionsButton.setOnClickListener(new ButtonClickHandler());
}
public class ButtonClickHandler implements View.OnClickListener {
public void onClick(View view) {
showDialog(0);
}
}
@Override
protected Dialog onCreateDialog(int id) {
return
new AlertDialog.Builder(this)
.setTitle("Planets")
.setMultiChoiceItems(_options, _selections, new DialogSelectionClickHandler())
.setPositiveButton("OK", new DialogButtonClickHandler())
.create();
}
public class DialogSelectionClickHandler implements DialogInterface.OnMultiChoiceClickListener {
public void onClick(DialogInterface dialog, int clicked, boolean selected) {
Log.i("ME", _options[clicked] + " selected: " + selected);
}
}
public class DialogButtonClickHandler implements DialogInterface.OnClickListener {
public void onClick(DialogInterface dialog, int clicked) {
switch (clicked) {
case DialogInterface.BUTTON_POSITIVE:
inputTemp.setText("");
for (int i = 0; i < _options.length; i++) {
if(_selections[i]){
if(inputTemp.getText().toString().length()>0){
inputTemp.setText(inputTemp.getText().toString().trim()+","+_options[i]);
}else{
inputTemp.setText(_options[i]);
}
}
}
break;
}
}
}
这篇关于获取警告对话框中选择价值EDITTEXT的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文