如何将Theme.Holo.DialogWhenLarge设置为自定义大小,位置,边距等?

时间:2014-05-23 10:53:53

标签: android android-layout android-activity

我正在制作我的第一个Android应用程序(之前仅在iOS和WP上工作),并尝试在手机上以全屏显示活动,并在平板电脑上显示对话框/弹出窗口。我找到了Theme.Holo.DialogWhenLarge,似乎这就是我要找的东西。

活动在平板电脑上显示为对话框,但我没有找到如何更改活动的大小和位置。它只是在屏幕中心显示,大小和尺寸与手机大小相同。怎么能改变?这是由Activity直接完成还是我必须创建一个子样式?

我看了Theme.Holo.DialogWhenLarge。此主题只是将PreferencePanel.Dialog应用于preferencePanelStyle。我不明白这会如何影响作为Dialog显示的活动。这个PreferencePanel是什么?

我如何能够找到一个样式可以改变对象(视图/活动)的哪些属性?

1 个答案:

答案 0 :(得分:0)

我有同样的问题。我没有找到任何方法来覆盖xml上的宽度和高度样式。 我找到的唯一方法是更改​​onStart上的窗口,这里是代码:

@Override
public void onStart() {
    super.onStart();
    // In order to not be too narrow, set the window size based on the screen resolution:
    final int new_window_width = 505;
    final int new_window_height = 502;
    WindowManager.LayoutParams layout = getDialog().getWindow().getAttributes();
    layout.width = new_window_width;
    layout.height = new_window_height;
    getDialog().getWindow().setAttributes(layout);
}

希望它有所帮助!