12

外部クリックでスピナープロンプトポップアップを非表示にしたい。プロンプト ポップアップが開いているときにユーザーがホーム キーを押すと、アクティビティが最小化されるため、ユーザーがアプリケーションを再度開くと、プロンプト ポップアップが消えるはずです。
これを達成する方法はありますか。ありがとうございました

編集:-- プロンプト ポップアップはカスタマイズされていません。onPauseだから私はそれらをまたはonResumeメソッドに隠すことはできません。

4

4 に答える 4

18

Andro の回答に基づいて、保護されたメソッド onDetachedFromWindow を呼び出すことができるリフレクションを好む場合があります。次に、Spinner をサブクラス化したり、レイアウトを調整したりする必要はありません。

/**
 * Hides a spinner's drop down.
 */
public static void hideSpinnerDropDown(Spinner spinner) {
    try {
        Method method = Spinner.class.getDeclaredMethod("onDetachedFromWindow");
        method.setAccessible(true);
        method.invoke(spinner);
    } catch (Exception e) {
        e.printStackTrace();
    }
}
于 2014-02-12T08:27:36.893 に答える
-3

スピナー.clearFocus();

これはプログラムでスピナーを閉じるための簡単な行です

于 2015-04-22T10:12:16.560 に答える