আমি এমন ক্রিয়াকলাপে একটি টুকরো যোগ করতে চাই যা এর বিন্যাসটিকে প্রোগ্রামগতভাবে প্রয়োগ করে। আমি ফ্রেগমেন্ট ডকুমেন্টেশন সন্ধান করেছি কিন্তু আমার কী প্রয়োজন তা বর্ণনা করার মতো অনেকগুলি উদাহরণ নেই। কোডটি লেখার চেষ্টা করার ধরণটি এখানে রয়েছে:
public class DebugExampleTwo extends Activity {
private ExampleTwoFragment mFragment;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
FrameLayout frame = new FrameLayout(this);
if (savedInstanceState == null) {
mFragment = new ExampleTwoFragment();
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.add(frame.getId(), mFragment).commit();
}
setContentView(frame);
}
}
...
public class ExampleTwoFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater,
ViewGroup container,
Bundle savedInstanceState) {
Button button = new Button(getActivity());
button.setText("Hello There");
return button;
}
}
এই কোডটি সংকলন করলেও শুরুতে ক্রাশ হয়, সম্ভবত আমার FragmentTransaction.add()
ভুল। এটি করার সঠিক উপায় কী?
ft.add(android.R.id.content, newFragment)
। কেবলমাত্র একটি কাস্টম লেআউট তৈরি করা এবং আইডি সেট করা প্রয়োজন যদি খণ্ডের ধারকটি ক্রিয়াকলাপের সামগ্রী না হয়।