Android Activity之間切換出現短暫黑屏的處理方法

來源:互聯網
上載者:User

標籤:android   style   blog   code   tar   http   

轉自:http://www.cppblog.com/fwxjj/archive/2013/01/14/197259.html

在預設情況下,Android應用程式啟動時,會有一個黑屏的時期,原因是,首個activity會載入一些資料,比如初始化列表資料、向伺服器發送請求擷取資料等等。同樣,使用startActivity(inte ……

在預設情況下,Android應用程式啟動時,會有一個黑屏的時期,原因是,首個activity會載入一些資料,比如初 始化列表資料、向伺服器發送請求擷取資料等等。同樣,使用startActivity(intent)方法從一個Activity進入到新的 Activity時,這個過程中也會出現短暫的黑屏。這個問題的存在是由Android應用程式框架決定的,但的確很影響使用者體驗。下面就動手來解決這個黑屏 問題!

第一步:自訂Theme(主題)

在your_project/res/values/styles.xml中加入自訂Activity的Theme,如下所示:

view plain   copy
  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <resources> 
  3.     <!-- Activity主題 --> 
  4.     <style name="activityTheme" parent="@android:style/Theme"> 
  5.         <item name="android:windowIsTranslucent">true</item> 
  6.     </style> 
  7. </resources> 

其中<item name="android:windowIsTranslucent">true</item>的意思是設定目標 Activity(要啟動的那個Activity)是透明的。很容易理解,兩個Activity,A和B;在A中啟動B,因為B是透明的,看到的背景仍是 A,這樣就解決了這個短暫的黑屏問題。

第二步:修改Manifest,將Theme應用到目標Activity上

定義好Theme後,就該為對應的Activity綁定Theme了。這個代碼主要在Manifest中實現,在Activity中加上以下屬性:

view plain   copy
  1. <activity android:name=".activity.PlacingOrderStep1Activity"  
  2.       android:theme="@style/activityTheme" /> 

OK,到此問題解決,不信的話,你就試試!

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.