最老程式員開發實訓9--Android---應用介紹頁面實現1

來源:互聯網
上載者:User

最老程式員開發實訓9--Android---應用介紹頁面實現1

在這一節中,我們回到Android端,討論一下當應用第一次運行時,通常採用的一頁一頁滑動的介紹頁面的實現方式。

首先,我們需要知道應用是否是第一次運行。判斷應用是否是第一次運行,通常是應用持久化儲存一個特定的資訊,每次啟動時檢查是否有該資訊,如果沒有則代表第一次運行。對於資訊的持久化儲存,在Android平台,大約有三種方法,分別是SharedPreferences、檔案、SQLite資料庫,通常類似應用是否第一次運行這種小資訊,一般會選擇儲存在SharedPreferences中。

我們首先在庫工程WkyLib中的controller包內,定義一個基類為Application的WkyApplication類,在該函數中實現判斷應用是否是第一次運行。Android系統中Application可以視為一個Android系統下系統提供的單例模式(Singleton)的類,可以儲存一些全域變數等資訊。

WkyApplication類的代碼如下所示:

 

public class WkyApplication extends Application {/** * 通過查詢儲存在SharedPreference裡面的值,檢查是否是首次運行 * @return * 【閆濤 2015.09.09】初始版本 */public boolean isFirstRun() {SharedPreferences pref = getSharedPreferences(S_PREF_NAME, MODE_PRIVATE);return pref.getBoolean(S_PREF_FIRST_RUN, true);}/** * 通過判斷SharedPreference裡是否有userId等資訊,判斷使用者是否註冊 * @return * 【閆濤 2015.09.09】初始版本 */public boolean isLogin() {return true;}public final static String S_PREF_NAME = WkgJys;public final static String S_PREF_FIRST_RUN = firstRun;}
上面的代碼比較簡單,不用解釋。但是這裡還想強調一下,getSharedPreferences中使用預先定義的常量,而不是直接寫字串,這樣首先不容易出現因為拼字錯誤而出現找不到值的問題,同時增加了代碼的可讀性,雖然不算什麼,但是良好的編程習慣是非常非常重要的。不重視的話,遲早要付出慘重的代價。

 

在具體應用WkgJys工程中,在controller包中定義繼承於WkyApplication的JysApplication類,代碼如下所示:

 

public class JysApplication extends WkyApplication {}
為了讓該類可以起作用,在WkgJys工程的Manifest檔案中,加入android:name屬性:

 

 

最後是在Splash頁面中,在定時結束時,判斷是否是第一次運行,第一次運行則啟動應用介紹頁面,代碼如下所示:

 

startMainActivityTask = new Runnable() {    @Override    public void run() {        if (jysApplication.isFirstRun()) {            Log.e(wky, 顯示介紹頁面);        } else if (!jysApplication.isLogin()) {            Log.e(wky, 啟動登入頁面);        } else {            Intent intent = new Intent(SplashActivity.this, MainActivity.class);            startActivity(intent);        }        finish();    }        };


 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.