下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
【移動應(yīng)用開發(fā)技術(shù)】Android中怎么對Intent進(jìn)行封裝
本篇文章為大家展示了Android中怎么對Intent進(jìn)行封裝,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。AndroidIntent封裝的實(shí)例詳解什么是Intent:Intent是協(xié)調(diào)應(yīng)用間、組件之間的通訊和交互。通過Intent你可以啟動Activity、Service、Broadcasts。更可以跨程序調(diào)用第三方組件。例如:啟動撥打電話界面、音樂播放等。
使用Intent:栗子:在一個(gè)Activity中添加一個(gè)點(diǎn)擊按鈕->點(diǎn)擊啟動第二個(gè)Activity(需要兩個(gè)String類型的參數(shù))
第一個(gè)Activity的按鈕點(diǎn)擊代碼:
public
void
onclick(View
view){
Intent
intent=new
Intent(this,Main2Activity.class);
intent.putExtra("text1","xiaoming");
intent.putExtra("text2","中國人");
startActivity(intent);
}第二個(gè)Activity接受Intent數(shù)據(jù)代碼:
protected
void
onCreate(Bundle
savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
ButterKnife.bind(this);
initView();
}
private
void
initView()
{
String
text1
=
getIntent().getStringExtra("text1");
String
text2
=
getIntent().getStringExtra("text2");
mTextView.setText(text1);
mTextView2.setText(text2);
}這是常見的Intent的使用,但是它存在這很大弊端。假如你的項(xiàng)目越來越多,你在啟動第二個(gè)Activity中參數(shù)漏掉一個(gè)有可能引起程序奔潰。那么如何避免這種情況呢:參數(shù)是第二個(gè)Activity所需的,那么為何不由他來進(jìn)行參數(shù)設(shè)定呢。按照它的規(guī)范來將Intent的實(shí)例交給第二個(gè)Activity。它更需要這個(gè)方法的封裝。也就是開閉原則另一種思路代碼實(shí)現(xiàn):第一個(gè)Activity的按鈕點(diǎn)擊代碼:
public
void
onclick(View
view){
//調(diào)用第二個(gè)Activity封裝好的Intent
Intent
intent
=
Main2Activity.newIntent(MainActivity.this,
"hsis",
"wodhis");
startActivity(intent);
}第二個(gè)Activity的代碼:public
class
Main2Activity
extends
AppCompatActivity
{
private
static
final
String
INTENT_TEXT1="intent_text1";
private
static
final
String
INTENT_TEXT2="intent_text2";
private
String
text1,text2;
@butterknife.Bind(R.id.textView)
TextView
mTextView;
@butterknife.Bind(R.id.textView2)
TextView
mTextView2;
@Override
protected
void
onCreate(Bundle
savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
ButterKnife.bind(this);
initIntent();
initView();
}
public
static
Intent
newIntent(Activity
activity,String
te,
String
te2){
Intent
intent=new
Intent(activity,Main2Activity.class);
intent.putExtra(INTENT_TEXT1,te);
intent.putExtra(INTENT_TEXT2,te2);
return
intent;
}
private
void
initIntent(){
text1=getIntent().getStringExtra(INTENT_TEXT1);
text2=getIntent().getStringExt
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版酒店餐飲服務(wù)承包及品牌合作合同3篇
- 2024版三方共同投資合作協(xié)議版B版
- 二零二五年度舊電動車買賣合同范本含電池回收協(xié)議3篇
- 2025版金融產(chǎn)品質(zhì)押抵押擔(dān)保合同范本12篇
- 2024年車輛運(yùn)輸全程保障協(xié)議
- 2025信用卡擔(dān)保合同擔(dān)保合同范本
- 二零二五年家庭贍養(yǎng)老人個(gè)人所得稅分?jǐn)偞韴?zhí)行合同3篇
- 2025數(shù)據(jù)采編錄入和維護(hù)合同
- 2024某科技公司與網(wǎng)絡(luò)游戲運(yùn)營商游戲開發(fā)合作合同
- 二零二五年度房地產(chǎn)擔(dān)保合同答辯狀編寫要點(diǎn)3篇
- 機(jī)場安檢突發(fā)事件應(yīng)急預(yù)案
- 2024年高考真題-化學(xué)(天津卷) 含解析
- 2024年招投標(biāo)培訓(xùn)
- 新反詐知識考試題庫200題(含答案)
- 部編版三年級上冊語文期末復(fù)習(xí)資料
- 建筑施工承插型盤扣式鋼管腳手架技術(shù)標(biāo)準(zhǔn)
- 相反國課件-大班
- 2023-2024學(xué)年新疆烏魯木齊130中學(xué)九年級(上)期末物理試卷
- 2023-2024學(xué)年江蘇省徐州市九年級(上)期末物理試卷
- 小學(xué)英語名詞單數(shù)變復(fù)數(shù)的語法規(guī)則及練習(xí)題含答案
- 四川省綿陽市高中2025屆高三二診模擬考試物理試卷含解析
評論
0/150
提交評論