根据设备大小在对话框和活动之间切换

Avi*_*h R 2 android user-experience

在任何应用程序中,添加/编辑将相对较少的输入.我已经看到应用程序,尤其是日历,正在使用聪明的策略将这些显示为简单对话框,以便用户可能不会注意到设计形式中存在空白

如下所示 并排侧

我的问题是,如何实现这一目标?

Geo*_*kin 5

我正在做的是扩展DialogFragment:

public class AboutFragment extends DialogFragment { ... }
Run Code Online (Sandbox Code Playgroud)

我还有一个包含该片段的活动.当需要调用对话框/活动时,此方法决定如何显示它:

public static void showAbout(Activity parent) {
    if (isTablet) {
        AboutFragment aboutFragment = AboutFragment.newInstance();
        aboutFragment.setStyle(DialogFragment.STYLE_NORMAL, R.style.DialogTheme);
        DialogUtils.showDialog(parent, aboutFragment);
    } else {
        Intent aboutIntent = new Intent(parent, AboutActivity.class);
        parent.startActivity(aboutIntent);
    }
}
Run Code Online (Sandbox Code Playgroud)

如何判断它是否是平板电脑,完全取决于你.

该技术在文档中进行了解释.