這篇“Android中如何實(shí)現(xiàn)界面互調(diào)”文章的知識點(diǎn)大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價(jià)值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“Android中如何實(shí)現(xiàn)界面互調(diào)”文章吧。
站在用戶的角度思考問題,與客戶深入溝通,找到平武網(wǎng)站設(shè)計(jì)與平武網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗(yàn)好的作品,建站類型包括:做網(wǎng)站、網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名與空間、虛擬空間、企業(yè)郵箱。業(yè)務(wù)覆蓋平武地區(qū)。在系統(tǒng)中,有一個優(yōu)化處理方式是,一個程序可以且只有一個Activity,如果調(diào)用了子界面后,再把該程序隱藏到后臺,如果系統(tǒng)不足時,系統(tǒng)會將彈出的Activity收回,只剩下一個最原始的Activity,這個主Activity,也可以說是程序的入口。
說了這么多,我們開始看看Android界面互調(diào)的具體實(shí)現(xiàn)方法,在一個Activity中怎樣彈出另一個Activity吧:
通常,依我們的常規(guī)相當(dāng),啟動界面無非就是指定一個新界面的具體類,然后調(diào)用某個方法咯,看代碼:
Intent intent = new Intent(MainActivity.this, NewForm.class); startActivity(intent);//或startActivityForResult(intent, 1);
這代碼碼到并不復(fù)雜,我們一項(xiàng)項(xiàng)分析:
Intent
這個具體我也不清楚怎么來翻譯,主要就是用于界面之間的溝通吧,當(dāng)然可能還有更多功能,以后再慢慢了解去!new Intent(MainActivity.this, NewForm.class);這里的創(chuàng)建就可以看到我們將NewForm這個類傳入了。
startActivity
啟動界面函數(shù),傳入的參數(shù)也就是我們定義好的intent。
startActivityForResult
這也是一個啟動界面的函數(shù),但與startActivity的區(qū)別就是,這個方法啟動界面后,這個界面可以將返回值傳入到父窗體中。至于這個參數(shù)1,目前還不是很了解,先用著吧。
其實(shí)這一步還是容易讓我們接受的,好,再了解第二步,怎樣傳遞參數(shù)?比如,我想做一個界面彈出一個人員列表,選一個人后,關(guān)閉界面,然后主界面就要知道我選擇了哪一個值。
在Android界面互調(diào)實(shí)現(xiàn)中,我們傳值采用的是Uri,這是一個用字符串拼接的信息,在系統(tǒng)中也有這么一個類,為什么不用Object而用Uri一個字符串呢,其實(shí)Object傳遞的信息固然多,但不規(guī)范,這個程序用Object來包裝后,其他程序就不知道怎么樣解釋你這個Object了。而Uri一個字符串可用的將各種資源HTML文檔、圖像、視頻片段、程序等由一個通過通用資源標(biāo)志符(Universal Resource Identifier, 簡稱"URI")進(jìn)行定位。
Uri分成三部份:訪問資源的命名機(jī)制;存放資源的主機(jī)名;資源自身的名稱,由路徑表示。
比如“Http://www.baidu.com/text/xxx.html”這里面Http是命名機(jī)制(協(xié)議名),www.baidu.com是資源位置,text/xxxlhtml是資源名稱。在Android系統(tǒng)中如“content://contacts/1”表示,在系統(tǒng)中contacts(聯(lián)系人)中的第1號,就很容易定位到一個資源了,采用了這些共用的格式后,就可以與系統(tǒng)中的其他處理程序來進(jìn)行無縫交互,比如
Intent intent = new Intent(Intent.ACTION_DIAL, Uri.parse(“tel:555-2368”)); startActivity(intent);
就可以用來啟動一個撥號程序。
定義好了參數(shù)格式,我們在啟用界面里就可以用
Uri data = Uri.parse("xxxx"); intent.setData(data);//傳遞參數(shù)
在子界面中,我們用
Intent intent = getIntent(); Uri data = intent.getData();
來接收傳來的參數(shù)
在子界面中,關(guān)閉界面時,也有確定和取消之分,
我們在點(diǎn)擊確定按鈕時可以這樣處理:
Uri data = Uri.parse("Content://" + edit.getText()); Intent result = new Intent(null, data); setResult(RESULT_OK, result);//傳確定信息,和參數(shù) finish();
當(dāng)點(diǎn)擊取消按鈕時,這樣處理:
setResult(RESULT_CANCELED, null); //傳取消信息,和參數(shù) finish();
在父界面中,我們通過一個public void onActivityResult(int requestCode, int resultCode, Intent data)繼承函數(shù)來處理所有子界面的返回消息。這里面?zhèn)鱽砹苏埱蟠a,返回代碼,和返回值,比如:
public void onActivityResult(int requestCode,
int resultCode, Intent data) {super.onActivityResult(requestCode, resultCode, data);
if (resultCode == Activity.RESULT_OK) {
Uri horse = data.getData();
TextView txt = (TextView)findViewById(R.id.TextView01);
txt.setText(horse.toString());
}
}
以上就是關(guān)于“Android中如何實(shí)現(xiàn)界面互調(diào)”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對大家有幫助,若想了解更多相關(guān)的知識內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。