Android?app啟動(dòng)圖適配方法實(shí)例
前言
app啟動(dòng)后的白屏問(wèn)題,默認(rèn)都是在splash頁(yè)面加主題配置,主題配置一個(gè)背景來(lái)達(dá)到用戶點(diǎn)擊app圖標(biāo)就立馬啟動(dòng)app的假象,大多情況下,使用背景單一的圖片作為啟動(dòng)圖,我們?cè)谠O(shè)置背景顏色,就能適配的很不錯(cuò)了(背景顏色+logo圖片的模式)。但是當(dāng)啟動(dòng)圖不再單一,而且復(fù)雜的圖形時(shí)候,適配就成大問(wèn)題了,下面介紹我的方法:
1、設(shè)置splash主題
<style name="MySplashTheme" parent="@android:style/Theme.Holo.NoActionBar">
<item name="android:windowBackground">@drawable/splah_bg</item>
<item name="android:windowFullscreen">true</item>
<item name="android:windowBackground">@color/white</item>
<item name="android:windowDrawsSystemBarBackgrounds">false</item>
</style>
2、 splash_bg 設(shè)置:
<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@drawable/wecome4"
android:dither="true"
android:filter="true"
android:antialias="true"
android:gravity="fill">
</bitmap>
這里面的gravity = fill是設(shè)置圖片拉伸的(可以用.9圖片)
3、splash布局文件設(shè)置:
<ImageView
android:id="@+id/iv_bg"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:background="@drawable/splah_bg" />
注意這里的圖片設(shè)置用 backgroup,而不是src。然后背景用上面的drawable文件,而不是直接使用圖片,不然主題到splash布局切換的時(shí)候,圖片會(huì)閃動(dòng)。
注意這里的圖片設(shè)置用 backgroup,而不是src。然后背景用上面的drawable文件,而不是直接使用圖片,不然主題到splash布局切換的時(shí)候,圖片會(huì)閃動(dòng)。
注意這里的圖片設(shè)置用 backgroup,而不是src。然后背景用上面的drawable文件,而不是直接使用圖片,不然主題到splash布局切換的時(shí)候,圖片會(huì)閃動(dòng)。
上面說(shuō)的是不能設(shè)置背景顏色的,如果啟動(dòng)圖背景是純色的,比如天貓那種,就一白色加一個(gè)logo,那種主題設(shè)置就不一樣了,請(qǐng)用下面這種模式
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape>
<solid android:color="#FFFFFF" />
</shape>
</item>
<item >
<bitmap
android:gravity="fill"
android:src="@drawable/wecome4"
android:dither="true"
android:filter="true"
android:antialias="true"
/>
</item>
</layer-list>
附問(wèn)題:項(xiàng)目啟動(dòng)時(shí),會(huì)有白屏現(xiàn)象(在點(diǎn)擊 應(yīng)用圖標(biāo)到看到啟動(dòng)頁(yè)之間)。
處理辦法:
一:我們盡量減少的Application類里面的耗時(shí)操作
二:設(shè)置項(xiàng)目啟動(dòng)頁(yè)的style類型為透明的
處理之后的現(xiàn)象:看不到白屏,但是點(diǎn)擊應(yīng)用圖標(biāo)之后,會(huì)靜止一段時(shí)間(沒有任何反應(yīng)),過(guò)一會(huì)兒,才會(huì)顯示啟動(dòng)頁(yè)
三:設(shè)置項(xiàng)目啟動(dòng)頁(yè)的style類型為指定圖片A(在SplashActivity里面 ,就不用設(shè)置setcontentView()了)
處理之后的現(xiàn)象:看不到白屏,但是點(diǎn)擊應(yīng)用圖標(biāo)之后,會(huì)顯示剛剛設(shè)置的style的圖片,過(guò)一會(huì)兒,才會(huì)顯示啟動(dòng)頁(yè)
這種做法遇到的問(wèn)題:
如果 這個(gè)圖片A的尺寸較小,那么的大尺寸的手機(jī)上,啟動(dòng)頁(yè)會(huì)看到圖片A的周邊是有空白了。
這個(gè)問(wèn)題處理辦法:
1.如果 這個(gè)圖片A的背景 有著明顯的規(guī)律(這個(gè)比較巧合,很難遇到),比如:從上到下有漸變時(shí),可以使用layer-list里的shape的gradient
2.在UI設(shè)計(jì)圖片A的時(shí)候,將這個(gè)圖片A的重要信息(應(yīng)用的名稱,icon等等)之外的其他背景 用透明表示,這樣就可以使用layer-list里的shape了,將這個(gè)圖片A的其它地方用shape的顏色來(lái)填充了,就不會(huì)看到周邊空白的現(xiàn)象了。

四:設(shè)置項(xiàng)目啟動(dòng)頁(yè),在SplashActivity里面 ,用setcontentView(),設(shè)置xml布局里面的ImageView的scaleType為能自動(dòng)填充滿界面布局的類型:centerCrop(注意:這個(gè)類型會(huì)自動(dòng)剪切掉圖片A的周圍,注意:的重要信息不要顯示在圖片的周邊,盡量顯示在圖片的中間)
總結(jié)
到此這篇關(guān)于Android app啟動(dòng)圖適配方法的文章就介紹到這了,更多相關(guān)Android app啟動(dòng)圖適配內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Android協(xié)程的7個(gè)重要知識(shí)點(diǎn)匯總
在現(xiàn)代Android應(yīng)用開發(fā)中,協(xié)程(Coroutine)已經(jīng)成為一種不可或缺的技術(shù),它不僅簡(jiǎn)化了異步編程,還提供了許多強(qiáng)大的工具和功能,可以在高階場(chǎng)景中發(fā)揮出色的表現(xiàn),本文將深入探討Coroutine重要知識(shí)點(diǎn),幫助開發(fā)者更好地利用Coroutine來(lái)構(gòu)建高效的Android應(yīng)用2023-09-09
Android開發(fā)中超好用的正則表達(dá)式工具類RegexUtil完整實(shí)例
這篇文章主要介紹了Android開發(fā)中超好用的正則表達(dá)式工具類RegexUtil,結(jié)合完整實(shí)例形式分析了Android正則表達(dá)式常見操作技巧,包括針對(duì)證件號(hào)、銀行賬號(hào)、手機(jī)號(hào)、郵編等的正則判斷相關(guān)操作技巧,需要的朋友可以參考下2017-11-11
android webvie指定視頻播放器播放網(wǎng)站視頻
android webview過(guò)濾調(diào)用第三方瀏覽器,并且解析視頻網(wǎng)站播放地址,使用指定播放器2013-11-11
點(diǎn)九圖片的顯示內(nèi)容區(qū)域應(yīng)作何理解
.9 ,是andriod平臺(tái)的應(yīng)用軟件開發(fā)里的一種特殊的圖片形式,文件擴(kuò)展名為:.9.png;點(diǎn)九圖片的拉伸區(qū)域不難理解,顯示內(nèi)容區(qū)域是怎樣的,接下來(lái)本文為您一一解答,感興趣的朋友可以了解下2013-01-01
圖解Windows環(huán)境下Android Studio安裝和使用教程
這篇文章主要介紹了圖解Windows環(huán)境下Android Studio安裝和使用教程的相關(guān)資料,需要的朋友可以參考下2015-12-12

