获取警告对话框中选择价值EDITTEXT [英] Get the alert dialog selected value to edittext

查看:140
本文介绍了获取警告对话框中选择价值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,新DialogBu​​ttonClickHandler())
                        。创建();
    }

    公共类DialogSelectionClickHandler实现DialogInterface.OnMultiChoiceClickListener {
        公共无效的onClick(DialogInterface对话框中,单击诠释,布尔选择){
            Log.i(ME,_options [点击] +选择:+选择);
        }
    }


    公共类DialogBu​​ttonClickHandler实现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,新DialogBu​​ttonClickHandler())
                        。创建();
    }

    公共类DialogSelectionClickHandler实现DialogInterface.OnMultiChoiceClickListener {
        公共无效的onClick(DialogInterface对话框中,单击诠释,布尔选择){
            Log.i(ME,_options [点击] +选择:+选择);
        }
    }


    公共类DialogBu​​ttonClickHandler实现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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆