Android啟動頁觅玻,歡迎頁Splash頁面想际,劉海全面屏沉浸式白屏解決

Android啟動頁,歡迎頁Splash頁面溪厘,劉海全面屏沉浸式白屏

隨著iPhone X的發(fā)布胡本,一眾Android廠商也開始跟風(fēng)推出自己的劉海屏,全面屏手機畸悬,整個手機行業(yè)已經(jīng)從傳統(tǒng)的16:9逐漸往18:9侧甫,18.5:9等屏幕比例過渡,其中也給我們開發(fā)著帶來了一個比較棘手的問題,那就是Splash Screen對全面屏手機的適配問題披粟。市面上通用的方案就是創(chuàng)建適配多種分辨率的drawable文件夾咒锻,這種方案有缺點明顯,不能完美的適配各種寬高比的屏幕守屉。于是乎就有了下面這種方案就是使用layer-list來進行適配惑艇,先看效果:

16:9屏幕全面屏不帶劉海全面屏帶劉海

在drawable目錄創(chuàng)建一個layer-list,如splash.xml

<?xml version="1.0"encoding="utf-8"?>

<!-- 背景顏色 -->

<!--注意此處的bottom要和activity_splash.xml中的logo圖marginBottom的值保持一致-->

<!-- 圖片 -->

android:gravity="center|bottom"

android:src="@drawable/splash_logo"/>

在style.xml中為SplashActivity創(chuàng)建一個theme

@drawable/splash

true

在values-v21中為SplashActivity創(chuàng)建一個和SplashTheme同名的一個theme

創(chuàng)建這個theme的主要目的是為了適配有navigation bar的手機胸梆,不讓windowBackground延申到navigationBar的區(qū)域內(nèi)

@drawable/splash

true

<!--不讓windowBackground延申到navigation bar區(qū)域-->

false

在AndroidManifest.xml中定義SplashActivity的theme為SplashTheme

android:name=".SplashActivity"

android:theme="@style/SplashTheme">

SplashActivity布局(參考)

需注意的是logo占位圖的marginBottom要與上面layer-list中的bottom屬性的值保持一致敦捧,這就可視覺上和windowBackground中的logo的位置保持完全一致。使得下面的logo在任意一種屏幕下都能保持居中的位置碰镜。

<?xml version="1.0"encoding="utf-8"?>

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical">

android:id="@+id/iv_ad"

android:layout_width="match_parent"

android:layout_height="0dp"

android:layout_weight="1"

android:contentDescription="廣告圖"

android:scaleType="centerCrop"

android:src="@drawable/ad_img"/>

android:id="@+id/logo"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_gravity="center_horizontal"

android:layout_marginTop="40dp"

android:layout_marginBottom="40dp"

android:src="@drawable/splash_logo"

android:contentDescription="logo圖,占位"/>

劉海屏適配

需解決的問題是讓布局延申到劉海(狀態(tài)欄)區(qū)域习瑰,方法如下:

針對Android p绪颖,在values-v28中為SplashActivity創(chuàng)建一個和SplashTheme同名的一個theme,

@drawable/splash

true

<!--不讓windowBackground延申到navigation bar區(qū)域-->

false

<!--適配Android P劉海屏-->

shortEdges

SplashActivity的onCreate中

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {

? ? Window window = getWindow();

? ? View decorView = window.getDecorView();

? ? decorView.setOnApplyWindowInsetsListener(new View.OnApplyWindowInsetsListener() {

@TargetApi(Build.VERSION_CODES.KITKAT_WATCH)

@Override

publicWindowInsets onApplyWindowInsets(View v, WindowInsets insets) {

? ? ? ? ? ? WindowInsets defaultInsets = v.onApplyWindowInsets(insets);

returndefaultInsets.replaceSystemWindowInsets(

? ? ? ? ? ? ? ? ? ? defaultInsets.getSystemWindowInsetLeft(),

0,

? ? ? ? ? ? ? ? ? ? defaultInsets.getSystemWindowInsetRight(),

? ? ? ? ? ? ? ? ? ? defaultInsets.getSystemWindowInsetBottom());

? ? ? ? }

? ? });

? ? ViewCompat.requestApplyInsets(decorView);

//將狀態(tài)欄設(shè)成透明甜奄,如不想透明可設(shè)置其他顏色

window.setStatusBarColor(ContextCompat.getColor(this, android.R.color.transparent));

}

華為手機

在AndroidManifest.xml中的SplashActivity的節(jié)點添加如下meta-data


轉(zhuǎn)載:http://www.reibang.com/p/105885c44e49

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末柠横,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子课兄,更是在濱河造成了極大的恐慌牍氛,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,561評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件烟阐,死亡現(xiàn)場離奇詭異搬俊,居然都是意外死亡,警方通過查閱死者的電腦和手機蜒茄,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,218評論 3 385
  • 文/潘曉璐 我一進店門唉擂,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人檀葛,你說我怎么就攤上這事玩祟。” “怎么了屿聋?”我有些...
    開封第一講書人閱讀 157,162評論 0 348
  • 文/不壞的土叔 我叫張陵空扎,是天一觀的道長。 經(jīng)常有香客問我润讥,道長转锈,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,470評論 1 283
  • 正文 為了忘掉前任象对,我火速辦了婚禮黑忱,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己甫煞,他們只是感情好菇曲,可當(dāng)我...
    茶點故事閱讀 65,550評論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著抚吠,像睡著了一般常潮。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上楷力,一...
    開封第一講書人閱讀 49,806評論 1 290
  • 那天喊式,我揣著相機與錄音,去河邊找鬼萧朝。 笑死岔留,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的检柬。 我是一名探鬼主播献联,決...
    沈念sama閱讀 38,951評論 3 407
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼何址!你這毒婦竟也來了里逆?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,712評論 0 266
  • 序言:老撾萬榮一對情侶失蹤用爪,失蹤者是張志新(化名)和其女友劉穎原押,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體偎血,經(jīng)...
    沈念sama閱讀 44,166評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡诸衔,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,510評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了烁巫。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片署隘。...
    茶點故事閱讀 38,643評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖亚隙,靈堂內(nèi)的尸體忽然破棺而出磁餐,到底是詐尸還是另有隱情,我是刑警寧澤阿弃,帶...
    沈念sama閱讀 34,306評論 4 330
  • 正文 年R本政府宣布诊霹,位于F島的核電站,受9級特大地震影響渣淳,放射性物質(zhì)發(fā)生泄漏脾还。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,930評論 3 313
  • 文/蒙蒙 一入愧、第九天 我趴在偏房一處隱蔽的房頂上張望鄙漏。 院中可真熱鬧嗤谚,春花似錦、人聲如沸怔蚌。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,745評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽桦踊。三九已至椅野,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間籍胯,已是汗流浹背竟闪。 一陣腳步聲響...
    開封第一講書人閱讀 31,983評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留杖狼,地道東北人炼蛤。 一個月前我還...
    沈念sama閱讀 46,351評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像蝶涩,于是被迫代替她去往敵國和親鲸湃。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,509評論 2 348