當我添加一個只支持擴展ActivityFragment類的類時,我發現它很困難,因爲我感興趣的特定類已經擴展了另一個LinearLayout類。爲了避免創建一個自定義按鈕,我做了以下的解決方法,用Java擴展多個類的替換
public class metaView extends LinearLayout {
private FragmentActivity fragmentActivity;
private void initViews() {
fragmentActivity = new FragmentActivity(){
@Override
protected void onCreate(Bundle savedInstanceState){
//Create Button Discovery...
}
};
}
}
但是,它似乎並不像覆蓋方法的onCreate曾經被調用。有沒有人看到這個替代方案的問題?或者這只是不工作?
在此先感謝!
我對Android生命週期並不熟悉,但它可能必須按照您的方法被調用的事件順序進行。例如,如果在調用initViews()之前訪問fragmentActivity變量,則該對象不會被創建,因此不會定義overriden方法。你嘗試過調試嗎? – ryuu9187
感謝您的迴應!我應該說清楚了,但initViews在fragmentActivity之前被訪問。但即使不是,fragmentActivity在initViews之前不會被訪問,因爲它包含在方法中? – jensiepoo
嗯,從技術上講,我不知道如何訪問fragmentActivity,或者調用onCreate()。但是,是的,如果它之前被訪問過,我會期待一個空引用ex。應該調用onCreate()什麼? – ryuu9187