在Fragment
源代碼中,有一個叫mActivity
場:什麼時候將Fragment.mActivity字段寫入?
package android.app;
public class Fragment implements ComponentCallbacks2, OnCreateContextMenuListener {
// Activity this fragment is attached to.
Activity mActivity;
爲了尋找到這個領域所記,我已經試過如下:
我已經檢查的
Fragment
的源代碼,我發現在Fragment.initState()
方法只有一個書寫行爲:mActivity = null;
但
Fragment
非常頻繁地使用mActivity
,必須在某處寫入字段。mActivity
的訪問是default
,所以也許還有其他類將寫這個字段。然後我檢查了Fragment
類的用法,但沒有發現與該字段的寫作行爲有關。不知道接下來要做什麼,也許在Android中有一些特殊的過程?
任何人都可以告訴我,上述方法是否正確找到這些問題的答案? 請給我一些關於如何找到課程/領域/方法的建議。
你檢查過'Fragment'類別的發生?如果沒有,請告訴我你如何快速找到修改該字段的行?謝謝! – JY0284
您鏈接到錯誤的類。問題是'android.app',不支持v4庫 –
@ cricket_007,我在Android Studio中使用'find usages'來查找'Fragment.mActivity'的插件。至於錯誤的類 - 「android.app.FragmentManager」是一樣的。唯一的區別是行號:http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/5.1.1_r1/android/app/FragmentManager.java#848 –