AlertDialog を表示する別のクラスを作成しようとしています。問題は、Activity を拡張するクラスを作成し、Activity で Dialog を作成すると、背景が透明ではなく黒くなることです。利用した:
android:theme="@android:style/Theme.Translucent.NoTitleBar"
私のマニフェストでは、タイトルと背景が削除されていますが、ダイアログを作成したときと同じ外観になりません。これが私のコードです:
public class ConfirmDialog extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Creo el dialogo
AlertDialog.Builder alert = new AlertDialog.Builder(this);
alert.setTitle(getString(R.string.AnalyzerDialogSaveTitle));
alert.setMessage(getString(R.string.AnalyzerDialogFileName));
// Creamos un EditView para que el usuario escriba
final EditText input = new EditText(this);
alert.setView(input);
alert.show();
}
}
また、Activity の代わりに AlertDialog と Dialog を拡張しようとしましたが、ボタンを押したときに setResult() を使用して onActivityResult() を呼び出すことができず、startActivityForResult() を使用して呼び出すこともできません。
実際のダイアログを取得するにはどうすればよいですか (AlertDialog クラスを使用するときのように見えないためテーマ化されていません)、startActivityForResult を使用してそれを呼び出しますか?
ありがとうございました :)
- - - 編集 - - -
私も Theme.Dialog を試しましたが、同じ外観が得られないのと同じです。これが私が意味することです:
Androidアラートダイアログ
Theme.Dialog または Theme.Traslucent.NoTitleBar
ご覧のとおり、得られる外観は同じではありません。