我注意到,您可以使用putFragment/getFragment在Android中使用包發送碎片引用。 所以這個問題。有沒有相應的方法來發送一般對象或更具體的活動?使用包發送對象引用
是的,其實我是一個C程序員誰愛指針:)
我注意到,您可以使用putFragment/getFragment在Android中使用包發送碎片引用。 所以這個問題。有沒有相應的方法來發送一般對象或更具體的活動?使用包發送對象引用
是的,其實我是一個C程序員誰愛指針:)
可以傳遞對象,如果他們實現Parcelable接口。請在此閱讀:http://developer.android.com/reference/android/os/Parcelable.html
編輯:不幸的是,這不同於傳遞對象引用。
編輯#2:啊,很酷。不知道那個API。不幸的是,它不起作用,你看它在這裏:FragmentManagerImpl#putFragment
所有這些都是在分組中存儲mIndex
變量作爲putInt()
傳入的分組。
如果你再看看這裏:Fragment.mIndex
你可以看到,Android的只是不斷片段的內部列表,這是它是如何恢復的片段,而不是通過其引用。所以不幸的是,這根本不存儲內存引用。恐怕你想做的事情是不可能的,你必須執行Parcelable
才能達到類似的行爲。
不,不是什麼即時通訊尋找。指出我需要一個參考,而不是該對象的副本。 – user2679998
@ user2679998查看我的編輯#2。 –
是的樂趣。我知道它不存儲引用,但它的工作原理與此類似。重要的是,同一個實例被撤銷,也就是說;不是副本。實現Parcable/Seriaizable會生成一個不是我正在尋找的副本。 – user2679998
你是如何傳遞片段?我沒有看到這些方法在Bundle中的任何地方聲明:http://developer.android.com/reference/android/os/Bundle.html –
你想通過傳遞捆綁中的活動來完成什麼? – DroidT
片段可以通過使用http://developer.android.com/reference/android/app/FragmentManager.html 我認爲它非常有用,當它需要重新創建(旋轉或其他原因)所需的fragement實例使用saveinstace保留/恢復狀態。 – user2679998