從零開始仿抖音做一個APP(啟動頁icon優(yōu)化&沉浸式)

@TOC

前面完成了歡迎頁的簡單UI和邏輯處理并實現(xiàn)了Har模塊和Hap模塊之間的依賴和關聯(lián)伐蒋。今天张足,對遺留問題做一些處理和優(yōu)化。

沉浸式效果

典型應用全屏窗口UI元素包括狀態(tài)欄趾诗、應用界面和底部導航條句旱,其中狀態(tài)欄和導航條魄眉,通常在沉浸式布局下稱為避讓區(qū);避讓區(qū)之外的區(qū)域稱為安全區(qū)。開發(fā)應用沉浸式效果主要指通過調整狀態(tài)欄序目、應用界面和導航條的顯示效果來減少狀態(tài)欄導航條等系統(tǒng)界面的突兀感臂痕,從而使用戶獲得最佳的UI體驗。

image.png

我們前一篇文章帶大家實現(xiàn)的歡迎頁只填充了應用界面猿涨,狀態(tài)欄和導航欄沒有被填充握童,由于背景色差別較大,頁面看起來很突兀叛赚,所有很有必要調整布局系統(tǒng)為全屏布局澡绩,界面元素延伸到狀態(tài)欄和導航條區(qū)域實現(xiàn)沉浸式效果。實現(xiàn)方案(也可根據(jù)實際情況在具體頁面進行全屏設置):

export default class EntryAbility extends UIAbility {
    ......
  onWindowStageCreate(windowStage: window.WindowStage): void {
    // Main window is created, set main page for this ability
    hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onWindowStageCreate');
    //設置全屏
    windowStage.getMainWindow((err: BusinessError, data) => {
      let errCode: number = err.code;
      if (errCode) {
        hilog.error(0x0000, 'testTag', 'Failed to obtain the main window. Cause: ' + JSON.stringify(err));
        return;
      }
      hilog.info(0x0000, 'testTag', 'Succeeded in obtaining the main window. Data: ' + JSON.stringify(data));

      data.setWindowLayoutFullScreen(true)
    });
    
    windowStage.loadContent('pages/Splash', (err) => {
      if (err.code) {
        hilog.error(0x0000, 'testTag', 'Failed to load the content. Cause: %{public}s', JSON.stringify(err) ?? '');
        return;
      }
      hilog.info(0x0000, 'testTag', 'Succeeded in loading the content.');
    });
  }

    ...... 
}

這樣配置后再運行項目俺附,就會發(fā)現(xiàn)歡迎頁全屏顯示肥卡,狀態(tài)欄、導航欄背景不再是默認白色事镣。但是會發(fā)現(xiàn)啟動過程中步鉴,會有一個應用icon一閃而過,這個體驗不是很好璃哟,有必要進一步優(yōu)化氛琢,這就需要找到entry模塊下的src -> main -> module.json5進行配置。

{
  "module": {
    "name": "entry",
    ...
    "abilities": [
      {
        "name": "EntryAbility",
        ...
        "icon": "$media:start_icon", // EntryAbility組件的圖標
        "label": "$string:EntryAbility_label", // EntryAbility組件的標簽
        "startWindowIcon": "$media:splash",  //啟動頁面圖標資源
        "startWindowBackground": "$color:start_window_background",  // 啟動頁面背景顏色
        ...
      }
    ],
   ...
  }
}
  • icon對應的是entry為主模塊的啟動圖標沮稚,大家可以自行替換(很多渠道都可以獲取艺沼,比如 iconfont);
  • label對應的是當前entry為主模塊的應用名稱册舞,也可自行替換(可直接定位到zh_CN目錄下的sstring.json進行修改)蕴掏。
  • startWindowIcon就是啟動過程中一閃而過的那個圖標,而這個屬性無法刪除调鲸,和很多其它開發(fā)者一樣的方案盛杰,在這里可以設置一個純色背景的icon,啟動過程中該圖標對用戶無感知藐石。也可以把啟動icon設置為歡迎頁即供,這樣用戶體驗可能更好,但需要注意冷啟動相關的性能問題于微。
  • startWindowBackground默認為純白色逗嫡,開發(fā)者可根據(jù)需求自行設置。

注:startWindowIcon建議使用不超過256256分辨率的圖片作為啟動頁面圖標株依,以減少圖片解碼帶來的時延驱证。*

優(yōu)化完成之后,效果如下:


image.png

至此恋腕,歡迎頁基本完成抹锄,此處還有優(yōu)化空間,但對當前項目非重點,后期在應用冷啟動優(yōu)化分析相關的文章中會繼續(xù)講解伙单,關于沉浸式效果的處理获高,在接下來的項目開發(fā)中依然會涉及到,所以也會繼續(xù)講解吻育。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末念秧,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子布疼,更是在濱河造成了極大的恐慌出爹,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,542評論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件缎除,死亡現(xiàn)場離奇詭異严就,居然都是意外死亡,警方通過查閱死者的電腦和手機器罐,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,822評論 3 394
  • 文/潘曉璐 我一進店門梢为,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人轰坊,你說我怎么就攤上這事铸董。” “怎么了肴沫?”我有些...
    開封第一講書人閱讀 163,912評論 0 354
  • 文/不壞的土叔 我叫張陵粟害,是天一觀的道長。 經常有香客問我颤芬,道長悲幅,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,449評論 1 293
  • 正文 為了忘掉前任站蝠,我火速辦了婚禮汰具,結果婚禮上,老公的妹妹穿的比我還像新娘菱魔。我一直安慰自己留荔,他們只是感情好,可當我...
    茶點故事閱讀 67,500評論 6 392
  • 文/花漫 我一把揭開白布澜倦。 她就那樣靜靜地躺著聚蝶,像睡著了一般。 火紅的嫁衣襯著肌膚如雪藻治。 梳的紋絲不亂的頭發(fā)上碘勉,一...
    開封第一講書人閱讀 51,370評論 1 302
  • 那天,我揣著相機與錄音栋艳,去河邊找鬼恰聘。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的晴叨。 我是一名探鬼主播凿宾,決...
    沈念sama閱讀 40,193評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼兼蕊!你這毒婦竟也來了初厚?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,074評論 0 276
  • 序言:老撾萬榮一對情侶失蹤孙技,失蹤者是張志新(化名)和其女友劉穎产禾,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體牵啦,經...
    沈念sama閱讀 45,505評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡亚情,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,722評論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了哈雏。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片楞件。...
    茶點故事閱讀 39,841評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖裳瘪,靈堂內的尸體忽然破棺而出土浸,到底是詐尸還是另有隱情,我是刑警寧澤彭羹,帶...
    沈念sama閱讀 35,569評論 5 345
  • 正文 年R本政府宣布黄伊,位于F島的核電站,受9級特大地震影響派殷,放射性物質發(fā)生泄漏还最。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,168評論 3 328
  • 文/蒙蒙 一愈腾、第九天 我趴在偏房一處隱蔽的房頂上張望憋活。 院中可真熱鬧岂津,春花似錦虱黄、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,783評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至粱甫,卻和暖如春泳叠,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背茶宵。 一陣腳步聲響...
    開封第一講書人閱讀 32,918評論 1 269
  • 我被黑心中介騙來泰國打工危纫, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 47,962評論 2 370
  • 正文 我出身青樓种蝶,卻偏偏與公主長得像契耿,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子螃征,可洞房花燭夜當晚...
    茶點故事閱讀 44,781評論 2 354

推薦閱讀更多精彩內容