一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Android - Android全面屏與異形(劉海)屏的適配教程

Android全面屏與異形(劉海)屏的適配教程

2022-03-09 15:13惜夢哥哥_ Android

Apple一直在引領設計的潮流,自從 iPhone X 發布之后,各種異形屏、劉海屏也都出來,下面這篇文章主要給大家分享介紹了關于Android全面屏與異形(劉海)屏的適配教程,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下

寫在前面

Android全面屏的手機越來越多了,要開始考慮應用適配全面屏的問題了,查了查相關文章,總結一下.

聲明最大屏幕寬高比

Android全面屏與異形(劉海)屏的適配教程

以上圖片來自Google Developer

通過文檔可以看出從Android7.0開始,應用的多窗口模式默認變為啟動,在多窗口模式下,默認已經進行了全面屏適配,如果我們不想應用在多窗口模式下運行,可以修改以下屬性:

?
1
android:resizeableActivity="false"

此時,我們可以手動進行設置最大屏幕寬高比:

android8.0及以上:

?
1
2
3
<activity android:maxAspectRatio="2.4">
 ...
</activity>

android7.1及以下版本:

?
1
<meta-data android:name="android.max_aspect" android:value="2.4" />

需要注意的是,如果手動進行設置了最大寬高比,一定要將多窗口模式設置為false,否則不生效.

劉海屏

劉海屏適配分為全屏已適配劉海屏,全屏未適配劉海屏和非全屏頁面,

非全屏頁面

非全屏頁面即有狀態欄顯示的頁面,截止目前,基本上所有的劉海都只存在于狀態欄,所以非全屏頁面無需我們進行適配,系統會自動進行適配.

Android全面屏與異形(劉海)屏的適配教程
非全面屏

因為劉海也是黑色的,所以看上去沒有效果.

全屏未適配劉海屏頁面

全屏界面未適配劉海時,不能使用劉海區域,所以會出現出圖所示效果,嚴重時可能會將底部控件頂下去,為了解決這個問題,需要對其進行適配

Android全面屏與異形(劉海)屏的適配教程
全屏未適配劉海屏頁面

全屏適配劉海屏頁面

通過查看WindowManager的源碼可以看到共有3種顯示模式,:

?
1
2
3
4
5
6
//默認情況,全屏頁面不可用劉海區域,非全屏頁面可以進行使用
public static final int LAYOUT_IN_DISPLAY_CUTOUT_MODE_DEFAULT = 0;
//不允許使用劉海區域
public static final int LAYOUT_IN_DISPLAY_CUTOUT_MODE_NEVER = 2;
//允許頁面延伸到劉海區域
public static final int LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES = 1;

官方對于這三種模式的解釋:

Android全面屏與異形(劉海)屏的適配教程

通過查看上面的文檔,則可以進行全屏界面的適配:

?
1
2
3
var lp = window.attributes
lp.layoutInDisplayCutoutMode = WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES
window.attributes = lp

Android全面屏與異形(劉海)屏的適配教程

全屏適配劉海屏頁面

以上方案是Google官方的適配方案,部分廠商并未使用此方案,而是使用自家API進行全面屏適配,詳情可以查看各手機廠商官方文檔.

OPPO:https://open.oppomobile.com/wiki/doc#id=10159

VIVO:https://dev.vivo.com.cn/doc/document/info?id=103

HUAWEI:https://mini.eastday.com/bdmip/180411011257629.html

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對服務器之家的支持。

原文鏈接:https://www.jianshu.com/p/f8711854bc8a

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 色综合中文字幕天天在线 | 亚洲AV无码乱码在线观看浪潮 | 被巨大黑人的翻白眼 | 动漫美女被褥吸奶漫画漫画 | 香蕉tv亚洲专区在线观看 | 别停好爽好深好大好舒服视频 | 秋霞在线一级 | 好骚好紧| 午夜AV亚洲一码二中文字幕青青 | 高清在线观看mv的网址免费 | 日韩在线天堂 | 亚洲gogo人体大胆西西安徽 | hezyo加勒比一区二区三区 | 日本一区二区免费在线观看 | 欧美一区二区三区免费看 | 久久精品国产久精国产果冻传媒 | 国产福利一区二区三区 | 国产在线精品香蕉综合网一区 | 99精品免费观看 | 我与旗袍老师疯狂床震 | 色屁屁www | 久久国产视频网 | 五月天国产精品 | 麻豆在线传煤 | 日本大尺度动漫在线观看缘之空 | 99r视频在线观看 | 亚洲国产99在线精品一区二区 | 日本午夜大片免费观看视频 | 国产亚洲精品精品国产亚洲综合 | 大东北chinesexxxx露脸 | 女人c交zzzooo在线观看 | sese在线| 日本爽p大片免费观看 | 欧美精品综合一区二区三区 | 久久精品国产亚洲AV麻豆欧美玲 | 久久亚洲精选 | 红怡院欧洲 | 午夜理论电影在线观看亚洲 | 秋霞鲁丝影院久久人人综合 | 好大好硬好深好爽gif图 | 精品小视频在线观看 |