wac*_*law 4 android android-alertdialog
我对AlertDialog的客户风格如下:
<style name="Testing.Dialog" parent="Theme.AppCompat.Light.Dialog.Alert">
<item name="colorAccent">@color/color_accent</item>
<item name="android:textColorPrimary">@color/text_color_primary</item>
<item name="android:background">@color/color_primary</item>
<item name="android:windowIsFloating">true</item>
<item name="android:windowContentOverlay">@null</item>
</style>
Run Code Online (Sandbox Code Playgroud)
我需要更改宽度和高度,因为它在我的平板电脑上太大了.有任何想法吗?
下面的代码不能正常工作:
<item name="windowMinWidthMajor">@dimen/abc_dialog_min_width_major</item>
<item name="windowMinWidthMinor">@dimen/abc_dialog_min_width_minor</item>
Run Code Online (Sandbox Code Playgroud)
Tim*_*eed 14
我能够像这样调整宽度:
<style name="NarrowDialog" parent="Theme.AppCompat.Light.Dialog.Alert">
<item name="windowFixedWidthMajor">70%</item>
<item name="windowFixedWidthMinor">70%</item>
</style>
Run Code Online (Sandbox Code Playgroud)
Dialog dialog = new AlertDialog.Builder(this, R.style.NarrowDialog)...
您可能还希望调整最小宽度:
<item name="windowMinWidthMajor">65%</item>
<item name="windowMinWidthMinor">65%</item>
Run Code Online (Sandbox Code Playgroud)
属性详情:
windowFixedHeightMajor: 窗口沿屏幕主轴的固定高度,即纵向时.
windowFixedHeightMinor: 窗口沿屏幕短轴的固定高度,即在横向时.
windowFixedWidthMajor: 窗口沿屏幕主轴的固定宽度,即在横向时.
windowFixedWidthMinor:窗口沿屏幕短轴的固定宽度,即纵向时.
如果是自定义对话框,则只能在新创建的XML文件中设置高度和宽度.但如果你使用AlertDialog.builder,那么使用它.
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setView(layout);
builder.setTitle("Title");
alertDialog = builder.create();
alertDialog.show();
alertDialog.getWindow().setLayout(600, 400); //Controlling width and height.
Run Code Online (Sandbox Code Playgroud)
并遵循这个希望,它可以帮助你.
小智 5
我发现一个更简单的方法是在styles.xml 中设置样式,然后设置android:windowMinWidthMajor 和android:windowMinWidthMinor
<style name="Testing.Dialog" parent="Theme.AppCompat.Light.Dialog.Alert">
<item name="android:windowMinWidthMajor">90%</item>
<item name="android:windowMinWidthMinor">90%</item>
</style>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6461 次 |
| 最近记录: |