Intent傳遞資料時,需要注意的點

2021-08-10 06:19:56 字數 1134 閱讀 6662

一般頁面之間傳遞物件為了方便直接使用intent,intent.putextra(「」,parcelable);

使用後會報乙個這樣的錯,應用正常執行。

將物件存入bundle中,bundle存入intent中再傳就不會出現報錯。

但是,有些時候直接使用intent傳也不會報錯。

下面是引自

兩個activity之間傳遞資料,資料的附加有兩種方式:

一種是直接 intent.putxx();

另一種是 先bundle.putxx(), 然後再呼叫public intent putextras (bundle extras) 新增bundle.

其實兩種的本質是一樣的。

先看intent的方法:

public intent putextra(string name, boolean value)  

mextras.putboolean(name, value);

return

this;

}

其中mextras是intent內部定義的乙個private bundle變數。

可以看到,intent其實是呼叫了bundle相應的put函式,也就是說,intent內部還是用bundle來實現資料傳遞的,只是封裝了一層而已。

而使用bundle傳值的話最後呼叫的方法:intent.putextras(bundle extras):

public intent putextras(bundle extras)  

mextras.putall(extras);

return

this;

}

可以看到,其實是把之前那個bundle中的資料批量新增到intent內部的bundle中。

intent旨在資料傳遞,bundle旨在訪問資料,當然intent也提供一部分資料的訪問,但比起bundle就顯得不專業,不靈活的多

找了很久還是沒有找到會報上面那個錯的原因,如果知道的大佬請告訴我下,蟹蟹!

配置時需要注意的

搭建的時候肯定不會在同一臺主機上搭建。大多都是在不同的伺服器上安裝不同的角色 追蹤器主機上的 配置檔案填寫的是 當前主機的ip 儲存節點主機上的 bind addr 填的就是當前主機的ip 配置中tracker server 填的蹤器的ip和埠 儲存節點的輪詢 就是在新增一次tracker serv...

編寫SHELL時需要注意空格

以下這是一段簡單的linux shell 功能是用於查詢當前目錄及其所有目錄中,哪些檔案中包括了 html 這四個字元,並將該檔名給列印出來,咋一看這段 應該是沒有問題的,但是實際上卻存在著兩個問題,先看下面的 吧 1 第乙個問題是賦值語句不能夠在變更與值之間有空格,如上面的這一句 wordnum ...

Intent傳遞資料時,可以傳遞哪些型別資料?

在android應用的開發中,如果我們需要在不同的模組 比如不同的activity之間 之間傳遞資料,通常有以下兩種方法 1.利用intent物件攜帶資料 通過查詢intent bundle的api文件,我們可以獲知,intent bundle支援傳遞基本型別的資料和基本型別的陣列資料,以及stri...