ほぼフルスクリーンの DialogFragment を表示しようとしています。しかし、私はどういうわけかそうすることができません。
私がフラグメントを表示している方法は、アンドロイド開発者のドキュメントから直接です
FragmentManager f = ((Activity)getContext()).getFragmentManager();
FragmentTransaction ft = f.beginTransaction();
Fragment prev = f.findFragmentByTag("dialog");
if (prev != null) {
ft.remove(prev);
}
ft.addToBackStack(null);
// Create and show the dialog.
DialogFragment newFragment = new DetailsDialogFragment();
newFragment.show(ft, "dialog");
フラグメントの RelativeLayout を fill_parent といくつかの minWidth と minHeight に単純に設定しようとしたことはわかっています。
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:minWidth="1000px"
android:minHeight="600px"
android:background="#ff0000">
DialogFragment が画面の大部分を占めることを期待しています。しかし、私は垂直方向にのみサイズを変更するようですが、水平方向に一定の幅までしかサイズを変更しません。
ここで提案されているように、コードでウィンドウ属性を設定しようとしました: http://groups.google.com/group/android-developers/browse_thread/thread/f0bb813f643604ec。しかし、これも役に立ちませんでした。
Android がダイアログを処理する方法について、私はまったく新しいので、おそらく誤解しています。どうすればこのようなことができますか?私の目標を達成するための別の方法はありますか?
Android デバイス:
Asus EeePad Transformer
Android 3.0.1
更新: フラグメントに次のコードを使用して、全画面表示にすることができました
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setStyle(STYLE_NO_FRAME, android.R.style.Theme_Holo_Light);
}
残念ながら、これは私が望むものではありません。背景を表示するには、ダイアログの周りに小さな「パディング」が必要です。
それを達成する方法はありますか?