Chi*_*hin 13
我不知道所有的设定的效果windowIsFloating来true,但是有一两件事,我注意到的是,当它被设置为true,该活动将不会扩大宽度以填充屏幕,即使你的布局宽度设置为match_parent(即android:layout_width="match_parent")
当您使用Dialog Theme 时,此属性默认为 true。
<style name="Base.V7.Theme.AppCompat.Light.Dialog" parent="Base.Theme.AppCompat.Light">
...
<item name="android:windowIsFloating">true</item>
...
</style>
Run Code Online (Sandbox Code Playgroud)
在这种情况下,Dialog将使用以下代码创建 PhoneWindow:
if (mIsFloating) {
setLayout(WRAP_CONTENT, WRAP_CONTENT);
setFlags(0, flagsToUpdate);
}
Run Code Online (Sandbox Code Playgroud)
它会导致 contentView 总是将内容包装得尽可能小。您可以将其设置为 false 或手动将Dialog窗口布局更新为 MATCH_PARENT,如下所示:
override fun onStart() {
super.onStart()
dialog?.window?.setLayout(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT)
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13814 次 |
| 最近记录: |