【发布时间】:2011-09-02 06:38:21
【问题描述】:
我正在创建一个自定义对话框:
Dialog myDialog = new Dialog(context, R.style.Theme_Levels);
myDialog.setContentView(R.layout.levelselector);
myDialog.show();
使用的样式:
<style name="Theme.Levels" parent="@android:style/Theme.Dialog">
<item name="android:windowFrame">@null</item>
<item name="android:windowIsFloating">true</item>
<item name="android:windowBackground">@drawable/dlgbg</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowSoftInputMode">stateUnspecified|adjustPan</item>
<item name="android:windowNoTitle">true</item>
<item name="android:backgroundDimEnabled">false</item>
</style>
布局xml文件:
<LinearLayout android:id="@+id/LevelSelector"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:layout_gravity="bottom|center_horizontal"
android:paddingBottom="50dip"
>
<Button android:text="Easy"
android:id="@+id/btn_Easy"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
</LinearLayout>
我希望按钮显示在对话框的底部中心(距底部 50dip 填充),但它显示在对话框的左上角。
那是因为 LinearLayout 不知道对话框的宽度/高度,也就是我在 style xml 文件中使用的背景图片的大小。
问题:如何知道对话框的宽高,使LinearLayout的大小和Dialog的大小一样?
【问题讨论】:
-
为按钮设置 layout_gravity。
标签: android layout dialog size