簡體   English   中英

DialogFragment填充屏幕在手機上

[英]DialogFragment fill screen on phone

我正在使用DialogFragment,並想知道是否有一種簡單的方法來指定在普通/小尺寸設備(手機)上使用全屏的對話框。 在您選擇安裝應用程序后,我想要實現的示例是Google Play上顯示的確認/權限對話框。

在此輸入圖像描述

如果要使用DialogFragment填充屏幕,只需更改主題即可。 用於全屏android.R.style.Theme_Holo_Light和非全屏對話框使用android.R.style.Theme_Holo_Light_Dialog;

在調用中使用這些值:

setStyle(DialogFragment.STYLE_NO_TITLE,android.R.style.Theme_Holo_Dialog); // 舉個例子

我在onCreate()的末尾調用此方法。

希望這有助於Jasper

在平板電腦中,以正常方式顯示對話框。

DialogFragment newFragment = MyDialogFragment.newInstance();
newFragment.show(getFragmentManager(), "dialog");

在Phone中,將DialogFragment作為Activity的onCreate()中的普通片段添加到布局中。

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    if (savedInstanceState == null) {
        FragmentTransaction ft = getFragmentManager().beginTransaction();
        DialogFragment newFragment = MyDialogFragment.newInstance();
        ft.add(R.id.embedded, newFragment);
        ft.commit();
    }

activity_main.xml中

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/embedded"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

</FrameLayout>

注意:<Fragment> Tag嵌入的片段不起作用。

有相同的問題(具有確切的圖表!)和答案(由提出問題的人。)答案是有效的,也利用了資源文件夾分類。 對話片段嵌入取決於設備

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM