小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

課堂筆記第五周

 windli筆記 2016-08-14
      這周主要講解了SharedPreferences的使用和Android中如何存儲(chǔ)數(shù)據(jù)的問(wèn)題,還討論了關(guān)于raw,res,asset 等文件的區(qū)別的使用方式。這里我先做個(gè)總結(jié)來(lái)說(shuō)明下自己以往使用的經(jīng)驗(yàn)。
SharedPreferences實(shí)質(zhì)上就是在內(nèi)部存儲(chǔ)了XML文件,文件中可以放置一些對(duì)象??梢詫?duì)文件進(jìn)行修改和刪除等操作。但是對(duì)應(yīng)的raw,res,asset 等目錄下的文件是只能讀取,不能修改和刪除的,這個(gè)是因?yàn)檫@些目錄的對(duì)應(yīng)文件已經(jīng)被編譯進(jìn)了apk包中,做為源碼的一部分。對(duì)已對(duì)應(yīng)一些有對(duì)大型文件(特別是二進(jìn)制文件)有存儲(chǔ)和刪除需求的一般都在內(nèi)部存儲(chǔ)或者外部存儲(chǔ)來(lái)完成。

一、Android SharedPreferences的簡(jiǎn)介

SharedPreferences是一種輕型的Android數(shù)據(jù)存儲(chǔ)方式,它的本質(zhì)是基于XML文件存儲(chǔ)key-value鍵值對(duì)數(shù)據(jù),通常用來(lái)存儲(chǔ)一些簡(jiǎn)單的配置信息。其存儲(chǔ)位置在/data/data/<包名>/shared_prefs目錄下。SharedPreferences對(duì)象本身只能獲取數(shù)據(jù)而不支持存儲(chǔ)和修改,存儲(chǔ)修改是通過(guò)Editor對(duì)象實(shí)現(xiàn)。比較經(jīng)典的使用方式例如用戶輸入框?qū)^(guò)往登錄賬戶的存儲(chǔ)。實(shí)現(xiàn)SharedPreferences存儲(chǔ)的步驟如下:

1、根據(jù)Context獲取SharedPreferences對(duì)象
2、利用edit()方法獲取Editor對(duì)象。
3、通過(guò)Editor對(duì)象存儲(chǔ)key-value鍵值對(duì)數(shù)據(jù)。
4、通過(guò)commit()方法提交數(shù)據(jù)。

二、SharedPreferences和Editor 的關(guān)系

1、SharedPreferences

public abstract SharedPreferences getSharedPreferences (String name, int mode)

方法得到一個(gè)sharedpreferences對(duì)象,參數(shù)name是preference文件的名字,mode則是方式,默認(rèn)為0。

2、Editor

Editor可用于SharedPreferences數(shù)據(jù)的添加,刪除,修改和查詢。

Public abstract SharedPreferences.Editor  putString (String key,String value)

通過(guò)執(zhí)行commit()或是apply()方法,將會(huì)應(yīng)用更改。

三、SharedPreferences的代碼片段

// 存儲(chǔ)sharedpreferences
public void setSharedPreference() {
sharedPreferences = getSharedPreferences("itcast", Context.MODE_PRIVATE);
Editor editor = sharedPreferences.edit();
editor.putString("username", text1.getText().toString());
editor.putInt("password", getpw());
editor.commit();// 提交修改
}

// 清除sharedpreferences的數(shù)據(jù)
public void removeSharedPreference() {
sharedPreferences = getSharedPreferences("itcast", Context.MODE_PRIVATE);
Editor editor = sharedPreferences.edit();
editor.remove("username");
editor.remove("password");
editor.commit();// 提交修改
}

// 獲得sharedpreferences的數(shù)據(jù)
public void getSahrePreference() {
String username = sharedPreferences.getString("username", "");
int password = sharedPreferences.getInt("password", 0);
String str = String.valueOf(password);
text1.setText(username);
text2.setText(str);
}

四、android assets與 assets與res/raw 的相同、不同點(diǎn)

1。獲取資源的輸入流 

資源文件 sample.txt 位于 $PROJECT_HOME/assets/ 目錄下,可以在 Activity 中通過(guò)      //也可以放置圖片等資源,獲取方式相同

Context.getAssets().open(“sample.txt”) 

方法獲取輸入流。 

注意:如果資源文件是文本文件則需要考慮文件的編碼和換行符。建議使用UTF-8和Unix換行符。 

2. WebView 加載assets目錄下的html文件 

資源文件 sample.html 位于 $PROJECT_HOME/assets/ 目錄下,可以通過(guò)以下代碼 

WebView.loadUrl(“file:///android_asset/sample.html”); 

加載html文件。 

Android 系統(tǒng)為每個(gè)新設(shè)計(jì)的程序提供了/assets目錄,這個(gè)目錄保存的文件可以打包在程序里。/res 和/assets的不同點(diǎn)是,android不為/assets下的文件生成ID。如果使用/assets下的文件,需要指定文件的路徑和文件名。下面這個(gè)例子,顯示如何訪問(wèn)/assets下的內(nèi)容。 

 

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多