6

Android Support packageを使用しています。

ダイアログを作成しました:

Dialog dialog = new Dialog(activity, android.R.style.Theme_Translucent_NoTitleBar_Fullscreen);

ダイアログをフルスクリーンで表示したいので、テーマを適用しTheme_Translucent_NoTitleBar_Fullscreenて動作させました。

次の 2 つの質問があります。

  1. ダイアログをフルスクリーンのように表示したいのですが、上部のActionBarをカバーしないようにします。その場合、どのテーマを使用すればよいですか?

  2. ダイアログでカバーされているビューも表示するために灰色のオーバーレイを表示するにはどうすればよいですか (私の最初の質問が解決されたと仮定します)?

4

1 に答える 1

2
  1. 私が見つけた唯一の実用的な解決策は、フラグメントに基づいて疑似ダイアログを実装することです。
  2. このアプローチは、シャドウを行うのにいくつかの困難を引き起こす可能性があります。少なくとも、私はそれをしませんでした。

コードサンプルの実行方法 (1):

public class MyDialog extends Fragment {

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    // ... your code
}

public void show(FragmentManager fragmentManager) {
    FragmentTransaction ft = fragmentManager.beginTransaction();
    String tag = MyDialog.class.getName();
    ft.add(android.R.id.content, this, tag);
    ft.commit();
}

private void dismiss() {
    FragmentTransaction ft = getFragmentManager().beginTransaction();
    ft.remove(this);
    ft.commit();
}
}
于 2012-12-06T18:48:32.760 に答える