আমার মধ্যে main.xml
আছে
<FrameLayout
android:id="@+id/frameTitle"
android:padding="5dp"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:background="@drawable/title_bg">
<fragment
android:name="com.fragment.TitleFragment"
android:id="@+id/fragmentTag"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
</FrameLayout>
এবং আমি খণ্ডন অবজেক্টটি এর মতো সেট করছি
FragmentManager fragmentManager = activity.getSupportFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
Fragment newFragment = new FragmentType1();
fragmentTransaction.replace(R.id.frameTitle, casinodetailFragment, "fragmentTag");
// fragmentTransaction.addToBackStack(null);
fragmentTransaction.commit();
এটি FragmentType2,FragmentType3,...
বিভিন্ন সময়ে বিভিন্ন ধরণের ফ্রেগমেন্ট অবজেক্ট ( ) সেট করে দিচ্ছে । এখন কিছু সময় আমার চিহ্নিত করা প্রয়োজন বর্তমানে কোন বস্তুটি রয়েছে।
ইন সংক্ষিপ্ত আমি ভালো কিছু করতে হবে:
Fragment currentFragment = //what is the way to get current fragment object in FrameLayout R.id.frameTitle
আমি নিম্নলিখিত চেষ্টা করেছিলাম
TitleFragment titleFragmentById = (TitleFragment) fragmentManager.findFragmentById(R.id.frameTitle);
এবং
TitleFragment titleFragmentByTag = (TitleFragment) fragmentManager.findFragmentByTag("fragmentTag");
তবে উভয় বস্তু (শিরোনামফ্রেগমেন্টবিআইআইডি এবং শিরোনামফ্রেগমেন্টবিটাইগ)null
আমি কি কিছু মিস করেছি?
আমি ব্যবহার করছি Compatibility Package, r3
এবং এর জন্য বিকাশ করছি API level 7
।
findFragmentById()
এবং findFragmentByTag()
যদি আমরা ব্যবহার করে টুকরো সেট করে থাকি fragmentTransaction.replace
বা কাজ fragmentTransaction.add
করব return null
তবে আমরা যদি xML এ অবজেক্টটি সেট করে থাকি (যেমন আমি আমার মধ্যে যা করেছি main.xml
)। আমি মনে করি আমার এক্সএমএল ফাইলগুলিতে আমি কিছু মিস করছি।