Android底部彈窗漏出底部導航欄/未能遮擋/底部透明了/未置底的問題

xxx耀10上面...底部漏出來了。另外一個項目也是類似彈窗,但是沒有這個問題。

載入超時,點擊重試

然後對比了下這個風格文件,發現是是否懸浮在Activity之上的問題:

<item name="android:windowIsFloating">true</item>設置為true就行了。

<!-- 默認的style -->
<style name="common_dialog" parent="@android:style/Theme.Dialog">
<!-- 是否有邊框 -->
<item name="android:windowFrame">@null</item>
<!--是否在懸浮Activity之上 false可能有問題喲...-->
<item name="android:windowIsFloating">true</item>
<!-- 標題 -->
<item name="android:windowNoTitle">true</item>
<!--陰影 -->
<item name="android:windowIsTranslucent">true</item><!--半透明-->
<!--背景透明-->
<item name="android:windowBackground">@android:color/transparent</item>
<!-- 還可以加入一些彈出和退出的動畫 (lan)-->
</style>

不過發現一個現象就是當鎖屏再打開的時候顯示就又正常了...也就是在某個生命周期裡面做了一些事情(具體的先不管了哈。記錄下...)

使用風格文件的地方:

public ShareDIalog(Context context, OnClickback callback) {
this(context, R.layout.share_dialog, R.style.common_dialog,
LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);
this.callback = callback;
}

public ShareDIalog(final Context context, int layout, int style, int width,
int height) {
super(context, style);
}

正在思考自己嘗試封裝彈窗(計劃包括分享彈窗,更新彈窗,獎勵彈窗等,逐步來)。這個大概是自定義View差不多了再開始嘗試搞....感覺從開始學習了好久,才完成了個人計劃的一小半....


推薦閱讀:

TAG:Android | 導航 | 彈窗 |