Trước hết, nếu bạn nên hiểu ví dụ đó cho bất kỳ Phân đoạn nào bạn có thể lấy từ api lớp Java. Giống như bên dưới:
Class<?> class = Class.forName("example.package.BillingFragment");
Constructor<?> cons = class.getConstructor(BillingFragment.class);
BillingFragment object = (BillingFragment) cons.newInstance();
Ví dụ về mã hiển thị, cách lấy Trường hợp từ bất kỳ lớp nào trong Java. Nhưng bạn nói một vài thứ khác. Nếu tôi hiểu đúng, bạn muốn lấy Fragment từ FragmentManager.
Bạn có thể làm điều đó, trong trường hợp nếu bạn đã xác định Phân đoạn trước đó! Ví dụ, bạn có dòng ứng dụng cơ sở, và sau đó bạn muốn thêm Fragment. Bạn có thể kiểm tra FragmentManager nếu có Fragments trong stack. Nhưng trong trường hợp của ngăn xếp rỗng, bạn nên thêm chúng:
String billingFragmentTag = BillingFragment.class.getSimpleName();
......
if (getFragmentManager.findFragmentByTag(billingFragmentTag) == null) {
BillingFragment fragment = new BillingFragment();
String billingFragmentTag = BillingFragment.class.getSimpleName();
FragmentTransaction fragTrans = getFragmentManager().beginTransaction();
fragTrans.add(fragment, billingFragmentTag).commit();
}
......
Vì vậy, sau này, bạn có thể kiểm tra nếu có Fragment của bạn trong ngăn xếp và móc ví dụ tích cực này. Điều này là chính xác và dòng chảy tiêu chuẩn cho việc sử dụng Fragments.
......
if (getFragmentManager.findFragmentByTag(billingFragmentTag) != null) {
BillingFragment fragment = getFragmentManager.findFragmentByTag(billingFragmentTag);
String billingFragmentTag = BillingFragment.class.getSimpleName();
FragmentTransaction fragTrans = getFragmentManager().beginTransaction();
fragTrans.add(fragment, billingFragmentTag).commit();
}
....
Chào mừng bạn!
đăng phần còn lại của mã nếu bạn vẫn cần trợ giúp. –