編輯:關於Android編程
對於Android應用的Splash啟動畫面,還有第二種方法,就是只用一個Activity,當程序啟動時顯示啟動畫面,當啟動完成時,它就會隱藏起來。
這種方法的優勢在於,因為Splash和主頁面處於同一Activity,就可以利用Splash的時間來預加載數據,這樣用戶就不必在Splash之後再等待數據加載,這樣就可以形成好的用戶體驗。但是,這種方法的缺點也非常明顯,如下:
1、由於處於同一Activity內,除非主體Activity是全屏的,否則沒辦法讓啟動畫面Splash全屏,但是作為一款優秀的應用App來講,一般主體不會是全屏的。
2、邏輯放在一起,難以維護。Splash和主體Activity放在一個Activity中,所有的邏輯都在一個Activity中,如果Splash想做比較好的效果,難以修改和維護。
當然,Android的原生應用中並沒有Splash,而對於這兩種實現方法來講,可以根據我們的要求來進行選擇。下面就是具體的代碼實現:
activity_main.xml代碼:
package com.ye_yun_lin.startactivity; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.os.SystemClock; import android.app.Activity; import android.view.Menu; import android.view.View; import android.view.Window; import android.widget.LinearLayout; import android.widget.TextView; public class MainActivity extends Activity { private LinearLayout linearLayout; private static final int STOPSPLASH=0; private static final long SPLASHTIME=1000; private Handler splashHandler=new Handler(){ @Override public void handleMessage(Message message) { switch (message.what) { case STOPSPLASH: SystemClock.sleep(4000); linearLayout.setVisibility(View.GONE); break; default: break; } super.handleMessage(message); } }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); getWindow().requestFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_main); linearLayout=(LinearLayout)findViewById(R.id.splash); Message message=new Message(); message.what=STOPSPLASH; splashHandler.sendMessageDelayed(message, SPLASHTIME); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } }
Android使用GridView實現日歷功能示例,代碼有點多,發個圖先:如果懶得往下看的,可以直接下載源碼吧,最近一直有人要,由於時間太久了,懶得找出來整理,今天又看到
在上一篇博客中,我們成功把地圖導入了我們的項目。本篇我們准備為地圖添加:第一,定位功能;第二,與方向傳感器結合,通過旋轉手機進行道路的方向確認。有了這兩個功能,地圖已經可
我們知道iOS上的應用,狀態欄的顏色總能與應用標題欄顏色保持一致,用戶體驗很不錯,那安卓是否可以呢?若是在安卓4.4之前,答案是否定的,但在4.4之後,谷歌允許開發者自定
Android系統有五種數據存儲形式,分別是文件存儲、SP存儲、數據庫存儲、contentprovider 內容提供者、網絡存儲。其中,前四個是本地存儲。存儲的類型包括簡