1

実際には、ユーザーが編集テキストをクリックすると、OK キャンセル ボタンを含むポップアップが表示されます。私の問題は、ユーザーが編集テキストをダブルクリックすると、2 つのポップアップが表示されることです。そのため、ユーザーがポップアップから任意の値を選択した場合、2 番目のポップアップはそのまま残ります。

対処方法がわかりません。

どんな助けでも大歓迎です。前もって感謝します。これが私のレイアウトです

<EditText
      android:id="@+id/date_control"
      android:layout_width="0dp"
      android:layout_height="wrap_content"
      android:layout_weight="1" 
      android:background="@drawable/bg_edit_text"
      android:focusableInTouchMode="false"
      android:inputType="none"
      android:editable="false"
      android:clickable="true"
      android:layout_marginRight="5dp" />

コントローラーを呼び出す私のJavaクラス

datePicker = (EditText) findView(R.id.date_control);
datePicker.setOnClickListener(myControllerClass);

そのコントローラー

MyDialog myDialog = new myDialog(activity, "Select Date", 
                    date, DateTimeDialog.DATE_PICKER);
myDialog.show();
4

2 に答える 2

6

ダイアログへのフィールド参照を保持している場合は、既に表示されているかどうかを確認できます

if(myDialog == null) {
    myDialog = new myDialog(activity, "Select Date", 
                    date, DateTimeDialog.DATE_PICKER);
}

if(!myDialog.isShowing()) {
    myDialog.show();
}
于 2012-07-05T06:29:36.163 に答える
0

クリック後に edittext クリッカブルを false に設定するだけで (ダイアログが表示されることを意味します)、ダイアログを閉じると、再び edittext クリッカブルを true にすることができます。

このプロパティをプログラムで設定する必要があります.. EditText プロパティへのリンク..

この説明がうまくいくことを願っています..

于 2012-07-05T06:17:11.493 に答える