2016-02-01 2 views
0

Здесь я использовал два всплывающих окна EditText, и мне нужно передать String PONO и CTNNO другому методу в моем классе. Поэтому, пожалуйста, помогите мне, как это сделать.Как получить значение EditText из всплывающего окна?

 private String showPopup(final Activity context, Point p) { 
    String a="hy"; 
     //Full screen popup 
     int popupWidth = 1500; 
     int popupHeight = 900; 
     // Inflate the popup_layout.xml 
     RelativeLayout viewGroup = (RelativeLayout) context.findViewById(R.id.popup); 
     LayoutInflater layoutInflater = (LayoutInflater) context 
       .getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
     View layout = layoutInflater.inflate(R.layout.popup_layout, viewGroup); 

     // Creating the PopupWindow 
     final PopupWindow popup = new PopupWindow(context); 
     popup.setContentView(layout); 
     popup.setWidth(popupWidth); 
     popup.setHeight(popupHeight); 
     popup.setFocusable(true); 

     // Some offset to align the popup a bit to the right, and a bit down, relative to button's position. 
     int OFFSET_X = 30; 
     int OFFSET_Y = 30; 

     // Clear the default translucent background 
     popup.setBackgroundDrawable(new BitmapDrawable()); 
    TextView barcodeno = (TextView) layout.findViewById(R.id.textView22); 
     barcodeno.setText("er31g3e3d"); 
     //Full screen popup 
     popup.showAtLocation(layout, Gravity.CENTER,OFFSET_X,OFFSET_Y); 
    EditText pono = (EditText) layout.findViewById(R.id.editText3); 
     EditText ctnno = (EditText) layout.findViewById(R.id.editText4); 
     PONO=pono.getText().toString(); 
     String CTNO=ctnno.getText().toString(); 
    Button btn_Assign=(Button) layout.findViewById(R.id.btn_Assign); 
     btn_Assign.setOnClickListener(new View.OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       Assign(); 
      } 
     }); 
     // Getting a reference to Close button, and close the popup when clicked. 
     Button btn_close = (Button) layout.findViewById(R.id.close); 

     btn_close.setOnClickListener(new View.OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       popup.dismiss(); 
      } 
     }); 
     return a; 
    } 

общественности недействительным Assign() мой другой метод, где я должен использовать popwindow Строка CTNNO и Pono.

+0

Объявить 'pono' или' ctnno' глобальную переменную в вашем классе. Используйте метод getText() для этой переменной для получения введенного значения. –

ответ

1

Вызов pono.getText() внутри onClick метода, на котором требуется получить значение входного пользователя из EditText как:

 @Override 
     public void onClick(View v) { 
     // get value from EditText here... 
      PONO=pono.getText().toString(); 
      Assign(); 
     } 

, а также для доступа pono объекта внутри метода OnClick либо сделать его final pono или объявить как Global в классе.

+0

будет ли это работать? Не могли бы вы объяснить часть кода? – Vignesh

+0

Уже объяснено. какая проблема у вас понимает? –

+0

@Prabhakaran: мой ответ предназначен только для 'pono', и вам также нужно сделать то же самое с' ctnno ' –