में एक नल कंटेनर दिया गया है, मैं एंड्रॉइड डेवलपर वेबसाइट पर ट्यूटोरियल के समान एंड्रॉइड टुकड़ों को एक बहुत ही सरल तरीके से उपयोग करने की कोशिश कर रहा हूं।एंड्रॉइड फ्रैगमेंट को क्रेटव्यू()
public class MediaInfoActivity extends FragmentActivity {
private final String TAG = "MediaInfoActivity";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.i(TAG, "onCreate()");
setContentView(R.layout.media_info_activity_layout);
}
}
यहाँ media_info_activity_layout.xml फ़ाइल के लिए कोड है:: अंत में यहाँ
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<fragment class="com.hawkforce.test.MediaInfoFragment"
android:id="@+id/mediaInfoFragment"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="0dp" />
<FrameLayout android:id="@+id/mediaPlayerBarPanel"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<fragment class="com.hawkforce.test.MediaPlayerBarFragment"
android:id="@+id/mediaPlayerBar"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</FrameLayout>
और है
मैं एक गतिविधि (MediaInfoActivity) निम्नलिखित कोड से MediaInfoFragment के लिए कोड:
public class MediaInfoFragment extends Fragment {
private final static String TAG = "MediaInfoFragment";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.i(TAG, "onCreate()");
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
Log.i(TAG, "onCreateView()");
if (container == null) {
Log.i(TAG, "onCreateView(): container = null");
}
return inflater.inflate(R.layout.media_info_fragment_layout, container, false);
}
}
यहां मेरी समस्या है: MediaInfoFragment की onCreateView() विधि में पारित कंटेनर शून्य है। जैसा कि मैंने समझा, यह केवल गैर-यूआई टुकड़ों के मामले में होना चाहिए। हालांकि, मेरे फ्रैगमेंट में एक यूआई है, जिसे मैंने MediaInfoActivity लॉन्च करते समय स्क्रीन पर ठीक प्रदर्शित किया है। यह समस्याएं पैदा करता है क्योंकि खंड की xml लेआउट फ़ाइल में कोई शैली घोषित नहीं की जाती है।
I/MediaInfoActivity: onCreate()
I/MediaInfoFragment: onCreate()
I/MediaInfoFragment: onCreateView()
I/MediaInfoFragment: onCreateView(): container = null
Am मैं यहाँ कुछ भी स्पष्ट लापता:
यहाँ मेरी लॉग है?
आप झूठी उपयोग करते हैं इसका मतलब है कि यह कंटेनर से जुड़ा नहीं है। –
आपका मतलब inflater में है, है ना? मैंने इसे सच में बदल दिया लेकिन कोई बदलाव नहीं हुआ। इसके अलावा इस पंक्ति: 'onCreateView(): कंटेनर = null' inflater को कॉल से पहले दिखाया गया है। मेरी समस्या वास्तव में है कि एंड्रॉइड क्रिएटिव्यू() पर दूसरे तर्क के रूप में शून्य हो जाता है और मुझे नहीं पता कि यह कहां से आता है। – HawkForce
- http://stackoverflow.com/questions/27306805/android-fragment-oncreateview-container-is-null - http://stackoverflow.com/questions/24589202/android-fragments-container-variable-in- oncreateview-है-शून्य – pRaNaY