Всплывающее окно не сбрасывает со счетов - PullRequest
0 голосов
/ 23 марта 2012

У меня есть EditText представление,

<EditText
android:layout_weight="1"
android:id="@+id/etMiktar"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:hint="@string/miktarHint"
android:focusable="false">
</EditText>

И я реализовал всплывающее окно, которое открывается, когда пользователь касается этого представления EditText.Это всплывающее окно имеет кнопку, поэтому при нажатии всплывающее окно должно быть закрыто.Хотя он получает мои клики, всплывающее окно не закрывается.Вот моя всплывающая реализация:

private void inflatePopUpSiparis(){
    LayoutInflater inflater = (LayoutInflater)
    this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    final PopupWindow pwSiparis = new PopupWindow(inflater.inflate(R.layout.siparismiktarpopup, null, false),400,550,true);         
    pwSiparis.showAtLocation(this.findViewById(R.id.llMain), Gravity.CENTER, 0, 0);
    //pwSiparis.setFocusable(true);
    View myPopUpSiparisView = pwSiparis.getContentView();

    etSiparisMiktar=(EditText)myPopUpSiparisView.findViewById(R.id.etSiparisMiktar);
    etSiparisMiktar.setText(etUrunMiktar.getText().toString());

    btnPopUpSiparisTamam=(Button)myPopUpSiparisView.findViewById(R.id.btnPopUpSiparis);
    btnPopUpSiparisTamam.setOnClickListener(new OnClickListener() { 
        public void onClick(View v) {
            pwSiparis.dismiss();
            Log.d("****",etSiparisMiktar.getText().toString().toString());
            etUrunMiktar.setText(etSiparisMiktar.getText().toString());
      }
    });


}

}

В чем может быть проблема?

Ответы [ 2 ]

0 голосов
/ 01 мая 2012

проблема была; Я использовал onTouchListener для EditText. Как dmon , указанный в ответе для аналогичной проблемы, onTouchListener отвечает как за посадку, так и за подъем. Поэтому, когда я изменил его на onClickListener, проблема решилась.

0 голосов
/ 23 марта 2012

Я использую следующий код для запуска пользовательского диалога, который похож на PopUp.Если вам нужно, я также могу поделиться файлом макета.dialog.cancel(); также похоже на отклонение.

private void showpopup(int popuptype, String message) {

    //set up dialog
    final Dialog dialog = new Dialog(this);
    dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
    dialog.setContentView(R.layout.dialog);

    //dialog.setTitle("This is my custom dialog box");
    dialog.setCancelable(true);
    //there are a lot of settings, for dialog, check them all out!

    //set up text
    TextView text = (TextView) dialog.findViewById(R.id.textViewSubject);
    text.setText(message);       

    //set up button
    Button button = (Button) dialog.findViewById(R.id.buttonOK);
    button.setOnClickListener(new OnClickListener() {
        public void onClick(View v) {
            Log.e("Alert", "Nothing");
            dialog.dismiss();
        }
    });
    //now that the dialog is set up, it's time to show it    
    dialog.show();  
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...