2014-11-25 3 views
2

Я после этого урока http://labs.makemachine.net/2010/03/android-multi-selection-dialogs/ и я хочу, чтобы получить выбранное значение оповещения диалога на мой EditText может ли один помочь мне с этим, мне нужно, чтобы получить подробную информацию в EditTextПолучить предупреждение диалог выбранное значение для 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; 

} 

} 
+0

объявить 'EditText inputTemp' и' String a' глобально. –

+0

nope его не работает –

+0

r u получить любую ошибку o wat? –

ответ

0

Сначала вы должны инициализировать EditText в OnCreate() и установить или изменить значение при положительной кнопке щелкнуло:

Пример:

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; 
      } 
     } 
    } 
+0

Спасибо, что он работает сейчас !!! и я принимаю и голосую, не могли бы вы рассказать мне свою ошибку. –

+0

@ Эдди, всегда рад помочь вам. –

+0

Можете ли вы проголосовать за вопрос и рассказать мне мои ошибки? –

Смежные вопросы