0

これがかなり奇妙であることはわかっていますが、何か間違ったことをしていると思います。

public void checkUpgrade( final Context context, final int PREF_ID ) {
    if (!StringHelper.isEmpty( type ) && !type.equals( TYPE_HIDDEN )) {

        if ( type.equals( TYPE_SUGGESTED ) && lastRemind + reminderInterval < System.currentTimeMillis() ) {
            return;
        }

        AlertDialog.Builder builder = new AlertDialog.Builder( context );
        builder.setTitle( title ).setMessage( description ).setCancelable( type.equals( TYPE_SUGGESTED ) ).setPositiveButton( "Update", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
                final Intent browserIntent = new Intent( Intent.ACTION_VIEW, Uri.parse( link ) );
                context.startActivity( browserIntent );
                lastRemind = Long.MAX_VALUE;
                save( context, PREF_ID );
            }
        } );
        if (type.equals( TYPE_SUGGESTED )) {
            builder.setNegativeButton( "Skip", new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int id) {
                    dialog.cancel();
                    lastRemind = System.currentTimeMillis();
                    save( context, PREF_ID );
                }
            } );
        }
        AlertDialog alert = builder.create();
        alert.show();
    }
}

これは私の警告ダイアログのコードです。私はすべて、アクティビティ onResume でアップグレードをチェックします。すべてのレイアウトではなく[アップグレード] ボタンのみをレンダリングする理由が本当にわかりません。なぜなのかご存知ですか?

4

1 に答える 1

0

コードを使用して AlertDialog を作成しましたが、期待どおりに表示されます。カスタムテーマを定義していますか? その場合は、システムの既定のテーマだけを使用してみて、それが役立つかどうかを確認してください。

もっと

さて、テーマはあなたの問題ではありません.XMLで定義された静的レイアウトはどうですか?

于 2012-09-26T12:09:54.677 に答える