Android?App實(shí)現(xiàn)閃屏頁廣告圖的全屏顯示實(shí)例
1. 適配長屏幕的全面屏
至于全屏展示,就得做適配工作,有以下兩種方式可進(jìn)行適配:
- 在 Android 8.0(API 26)及更高版本中,我們可以在 標(biāo)簽中使用
android:MaxAspectRatio來聲明其支持的屏幕最大寬高比。 - 比如我們可以聲明最大寬高比為 2.4:
<!-- Render on full screen up to screen aspect ratio of 2.4 --> <!-- Use a letterbox on screens larger than 2.4 --> <activity android:maxAspectRatio="2.4"> ... </activity>
- 對于Android 7.1及更低版本,我們可以在 元素中添加名為
android.max_aspect的 元素
如下所示:
<!-- Render on full screen up to screen aspect ratio of 2.4 --> <!-- Use a letterbox on screens larger than 2.4 --> <meta-data android:name="android.max_aspect" android:value="2.4" />
2. 適配劉海屏或者水滴屏
Google 為劉海屏顯示方式提供了三種顯示模式:
// 默認(rèn)情況,全屏頁面不可用劉海區(qū)域,非全屏頁面可以進(jìn)行使用 public static final int LAYOUT_IN_DISPLAY_CUTOUT_MODE_DEFAULT = 0; // 允許頁面延伸到劉海區(qū)域 public static final int LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES = 1; // 不允許使用劉海區(qū)域 public static final int LAYOUT_IN_DISPLAY_CUTOUT_MODE_NEVER = 2;
凹形屏幕的顯示模式
我們可以通過下面兩種方式來指定應(yīng)用在凹形屏幕的顯示模式:
- 在主題中加入
android:windowLayoutInDisplayCutoutMode屬性指定顯示模式:
// value-v28/styles.xml
<style name="AppTheme.Launcher" parent="AppTheme">
<item name="android:windowBackground">@drawable/branded_launch_screens</item>
<item name="android:statusBarColor">@color/colorPrimary</item>
<item name="android:windowLayoutInDisplayCutoutMode">shortEdges</item>
</style>
- 通過在代碼中指定 Activity 的顯示模式
我們可以在 Activity 的 onCreate 中指定凹形屏幕的顯示模式:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (Build.VERSION.SDK_INT >= 28) {
WindowManager.LayoutParams lp = getWindow().getAttributes();
lp.layoutInDisplayCutoutMode = WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES;
getWindow().setAttributes(lp);
}
}
具體使用:需要在values-v27及以上的styles.xml中加入以下主題設(shè)置:
<!--實(shí)現(xiàn)啟動頁全屏-->
<style name="Theme.SplashActivity" parent="Theme.AppCompat.NoActionBar">
<item name="android:windowBackground">@color/white</item>
<item name="android:windowTranslucentStatus">false</item>
<item name="android:statusBarColor">@android:color/transparent</item>
<item name="colorPrimary">@color/main_bg</item>
<item name="colorPrimaryDark">@color/white</item>
<item name="colorAccent">@color/white</item>
<item name="android:windowFullscreen">true</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowTranslucentNavigation">true</item>
<item name="android:windowLayoutInDisplayCutoutMode">shortEdges</item>
</style>以上就是Android App實(shí)現(xiàn)閃屏頁廣告圖的全屏顯示實(shí)例的詳細(xì)內(nèi)容,更多關(guān)于Android 閃屏頁廣告圖全屏的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
關(guān)于android連續(xù)點(diǎn)擊出現(xiàn)多個Activity界面的解決方法
這篇文章主要介紹了關(guān)于android連續(xù)點(diǎn)擊出現(xiàn)多個Activity界面的解決方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03
Android自定義view實(shí)現(xiàn)拖拽選擇按鈕
這篇文章主要為大家詳細(xì)介紹了Android自定義view實(shí)現(xiàn)拖拽選擇按鈕,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-07-07
Android?Scroller實(shí)現(xiàn)彈性滑動效果
這篇文章主要為大家詳細(xì)介紹了Android?Scroller實(shí)現(xiàn)彈性滑動效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-04-04
Android仿微信和QQ多圖合并框架(類似群頭像)的實(shí)現(xiàn)方法
這篇文章主要給大家介紹了關(guān)于Android仿微信和QQ多圖合并框架的相關(guān)資料,其實(shí)就是我們平時所見的群聊頭像,文中通過示例代碼介紹的非常詳細(xì),對各位Android開發(fā)者們具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-12-12
老項(xiàng)目遷移AndroidStudio3.0遇到的坑
給大家分享了老的項(xiàng)目以及程序遷移到了AndroidStudio3.0遇到的坑和問題解決辦法,希望給你做個參考。2017-11-11
Android使用AsyncQueryHandler實(shí)現(xiàn)獲取手機(jī)聯(lián)系人功能
這篇文章主要為大家詳細(xì)介紹了Android使用AsyncQueryHandler實(shí)現(xiàn)獲取手機(jī)聯(lián)系人功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-07-07
Android 兩個ViewPager的聯(lián)動效果的實(shí)現(xiàn)
這篇文章主要介紹了Android 兩個ViewPager的聯(lián)動效果的實(shí)現(xiàn),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-08-08

