導航:首頁 > 操作系統 > androidgetintent

androidgetintent

發布時間:2022-09-03 09:50:18

A. android中第一個activity的onCreate中就用getIntent()方法。為什麼不會報空指針呢

這個intent一定是不會未空的,MainActivity是的intent一開是ActivityManager發出來的,所以是不為空的

B. Android Intent 如何接收到指定的Intent傳遞過來的值呢

首先,盡量不要用try{}catch去捕捉能用判斷規避的異常,那樣會影響效率,每次出現異常,虛擬機要抓錯誤調用堆棧。所以,最好的方式是通過判斷去規避。
按你的思路,可以先判斷getIntent.getExtras()是否為null。
Intent
_getIntent
=
this.getIntent();
if(
_getIntent.getExtras()
!=
null){
Log.i("YuryLog","理論上只有點了確認鍵才執行");
receiveName
=
_getIntent.getExtras().getString("sendName");
receiveEatSomething
=
_getIntent.getExtras().getString("sendeatSomething");
receiveCopies
=
_getIntent.getExtras().getString("sendcopies");
......
要指出的是,上述代碼,最好使用getXXXExtra這類方法,它不會出現空指針(除了少數幾個,比方說getStringExtra)。
需要設定默認值的,在沒有值時它會返回默認值;沒有設置默認值的,在沒有值時會返回null,針對這類判空一下。
可以看下getBooleanExtra的源碼
public
boolean
getBooleanExtra(String
name,
boolean
defaultValue)
{
return
mExtras
==
null
?
defaultValue
:
mExtras.getBoolean(name,
defaultValue);
}
而getExtras()在沒有值時會返回null,看下源碼:
public
Bundle
getExtras()
{
return
(mExtras
!=
null)
?
new
Bundle(mExtras)
:
null;
}
所以,最好不要用getIntent().getExtras()這種方式,換用getIntent().getXXXExtras(),這樣針對有設置默認值的就不需要判空了。
activity之間傳值,是沒有機制可以確定哪個activity傳過來的。這是考慮到代碼的可擴展性,解耦。要確定哪個activity發過來,在intent創建那裡多傳個布爾值就行,比方說下面的代碼。
發送
intent.putExtra("fromXXActivity",
true);
接收
if
(getIntent().getBooleanExtra("fromXXActivity",
false))
{
......
//
這里,你就可以安全的接收那個activity發過來的所有值。
}

C. Android開發中,onCreate方法中經常有直接調用的方法如:getIntent(),這樣的方法都是Activity定義過的嗎

getIntent()得到的startActivity(intent)中傳遞過來的Intent的,就像你說說的那樣,是Activity實現的,你繼承了Activity,所以自然就能用了。

getDefaultAdapter()這個不是Activity的

D. 我是android 開發的 在mainActivity中調到 CaptureActivity 然後在跳回來 getIntent取不到值

本來就獲取不到。返回的時候沒有用intent。。這樣寫的話 你要用startacitvityforresult 來啟動第二個頁面

E. 安卓getIntent();方法

原方法為 public Intent getIntent() ,它是Intent類本身的一個方法,可以直接返回Intent實例。調用其它類的方法才用對象或對象(靜態方法用類名)。這樣的例子有很多啊,例如:getBaseContext(), 得到一個Context的引用。

F. android this.getIntent(); 和new Intent();有什麼 區別呢

不要用getintent

getintent是用來獲取前一個activity的的附加數據的
比如oneactivity用intent啟動twoactivty,並且用putextra方法加入了一些數據,在twoactivity就可以getintent,使用getextra獲取額外數據

G. android 中如何使用intent通過傳遞變數傳遞數據

Intent intent =new Intent(AActivity.this,BActivity.class);
intent.putExtra("num1", num1) ;
intent.putExtra("num2", num2) ;
startActivity(intent) ;
另一個接受的是Activity是 :
String num1 =this.getIntent().getStringExtra("num1") ;
String num2 =this.getIntent().getStringExtra("num2") ;
基本就這樣

閱讀全文

與androidgetintent相關的資料

熱點內容
合成游戲源碼h5 瀏覽:348
pdf出現空白頁 瀏覽:243
平行加速app怎麼退訂 瀏覽:306
mac文件夾怎麼重新命名 瀏覽:884
手機app怎麼用在平板上 瀏覽:235
伺服器cpuc2什麼意思 瀏覽:709
程序員的績效型年終獎 瀏覽:584
程序員心裡不舒服 瀏覽:463
檢測程序員 瀏覽:979
程序員一言不合就被裁員 瀏覽:757
安卓手機上的鍵盤怎麼換 瀏覽:49
孩子的火車票怎麼通過app退票 瀏覽:843
中望dim標注命令是什麼 瀏覽:648
大人喝奶瓶解壓嗎 瀏覽:203
文件夾提示該項目不在 瀏覽:973
推薦演算法博客 瀏覽:49
神奇九轉功能源碼 瀏覽:116
最小公倍數的演算法分析 瀏覽:975
android新窗口 瀏覽:338
為什麼安卓手機做不出按壓反饋 瀏覽:622