国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

DialogFragment寬度問題處理

2019-11-08 00:29:49
字體:
來源:轉載
供稿:網友

看官方文檔上Dialogs說明時,使用layout進行自定義布局,遇到常見的自定義Dialog寬度處理問題。找到三種方法解決之:

1.跟布局添加minWidth

這個和View的measure有關,View在measure時先會取該minWidth和backgroundDrawable.width。

2.設置Style

直接設置成Theme.holo,該效果是默認Alert.Dialog的寬度效果。

@Override public void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setStyle(STYLE_NO_TITLE, android.R.style.Theme_Holo_Light_Dialog_MinWidth); }

也可以直接設置為自己的style,該style沒有內部Padding,寬度完全為屏幕寬度。DialogFragment內部的默認Theme.Panel不是很實用。

<style name="AlertDialogStyle" parent="Theme.AppCompat.Light.Dialog"> <item name="android:windowBackground">@android:color/transparent</item> <item name="android:windowContentOverlay">@null</item> <item name="android:windowIsFloating">true</item> <item name="android:windowFrame">@null</item> <item name="android:backgroundDimEnabled">true</item> <item name="android:windowNoTitle">true</item> <item name="android:windowIsTranslucent">true</item> <item name="android:windowAnimationStyle">@style/BottomDialogStyle</item> </style>//對話框彈出動畫 <style name="BottomDialogStyle" parent="Animation.AppCompat.Dialog"> <item name="android:windowEnterAnimation">@anim/bottom_in</item> <item name="android:windowExitAnimation">@anim/bottom_out</item> </style>

3.修改Dialog的LayoutParams

這種方式可操控性強。但也收到Dialog的style的影響。默認的style會有一個全局的Padding,導致寬度不能完全擴展到屏幕。

@Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); WindowManager.LayoutParams attributes = getDialog().getWindow().getAttributes(); attributes.width = 800; attributes.height = -2; getDialog().getWindow().setAttributes(attributes); }
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 马山县| 龙里县| 桓仁| 乐陵市| 尼勒克县| 洛浦县| 柳江县| 娄烦县| 松原市| 余江县| 安溪县| 漳州市| 宣武区| 博野县| 孟连| 云南省| 南昌市| 上杭县| 东乡族自治县| 平遥县| 芒康县| 沁阳市| 峨山| 山阳县| 汝州市| 临潭县| 辉县市| 曲阜市| 吉林省| 防城港市| 柏乡县| 沂水县| 马山县| 崇明县| 惠安县| 阿拉善右旗| 磐安县| 镇宁| 南汇区| 通化市| 巴林左旗|