別のフラグメントのフラグメントから開始メソッドに問題があります。フラグメントaのフラグメントbからメソッドを表示する方法
私は2つの断片を持っています。引き出しと引出しで、私は情報を持つdialogFragmentを選択できます。私は彫刻だけを開いていますが、私はすべてのオプションについて一つの断片を作りたいと思います。
したがって、フラグメントBはDialogFragmentです。
これは私が
public void configureSettingsMenus(int position) {
switch (position) {
case TRADING_HISTORY:
break;
case LEADER_BOARD:
break;
case SPECIAL_OFFER:
break;
case VIDEO_TUTORIALS:
break;
case FAQ:
break;
case CONTACT:
break;
default:
Toast.makeText(getContext(), "Something went wrong, try again...", Toast.LENGTH_SHORT).show();
break;
}
を呼び出したいmainメソッドであり、これは
public class SettingsFragment extends DialogFragment {
private static final int TRADING_HISTORY = 1;
private static final int LEADER_BOARD = 2;
private static final int SPECIAL_OFFER = 3;
private static final int VIDEO_TUTORIALS = 4;
private static final int FAQ = 5;
private static final int CONTACT = 6;
String[] data = {"HERE", "WILL", "BE", "GAME", "HISTORY"};
public SettingsFragment() {
}
public static SettingsFragment newInstance(int num) {
SettingsFragment f = new SettingsFragment();
Bundle args = new Bundle();
args.putInt("num", num);
f.setArguments(args);
return f;
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_game_history, container, false);
RecyclerView recyclerView = (RecyclerView) view.findViewById(R.id.history_games_recycler);
recyclerView.setHasFixedSize(true);
RecyclerView.LayoutManager layoutManager = new LinearLayoutManager(getContext());
recyclerView.setLayoutManager(layoutManager);
RecyclerView.Adapter adapter = new WinLostHistoryAdapter(data);
recyclerView.setAdapter(adapter);
return view;
}
public void configureSettingsMenus(int position) {
switch (position) {
case TRADING_HISTORY:
break;
case LEADER_BOARD:
break;
case SPECIAL_OFFER:
break;
case VIDEO_TUTORIALS:
break;
case FAQ:
break;
case CONTACT:
break;
default:
Toast.makeText(getContext(), "Something went wrong, try again...", Toast.LENGTH_SHORT).show();
break;
}
}
}
そのクラスで、FragmentAに私はこの作成:
DialogFragment settingsFragment = SettingsFragment.newInstance(1);
private void configureDrawer(){
result = new DrawerBuilder()
.withSliderBackgroundColor(Color.GRAY)
.withActivity(getActivity())
.withDisplayBelowStatusBar(false)
.withDrawerGravity(Gravity.LEFT)
.withHeaderPadding(true)
.addDrawerItems(
new SectionDrawerItem().withName("Options"),
new PrimaryDrawerItem().withName("Trading History").withIcon(R.drawable.trading_history).withIdentifier(1),
new PrimaryDrawerItem().withName("Leader Board").withIcon(R.drawable.leade_board).withIdentifier(2),
new PrimaryDrawerItem().withName("Special offer").withIcon(R.drawable.special_icon).withIdentifier(3),
new PrimaryDrawerItem().withName("Video tutorials").withIcon(R.drawable.video_tutorials).withIdentifier(4),
new PrimaryDrawerItem().withName("FAQ").withIcon(R.drawable.faq_icon).withIdentifier(5),
new PrimaryDrawerItem().withName("CONTACT").withIcon(R.drawable.contact_icon).withIdentifier(6)
)
.buildForFragment();
result.setOnDrawerItemClickListener(new Drawer.OnDrawerItemClickListener() {
@Override
public boolean onItemClick(View view, int position, IDrawerItem drawerItem) {
FragmentTransaction ft = getChildFragmentManager().beginTransaction();
ft.addToBackStack(null);
if(position == 6)
{
result.closeDrawer();
settingsFragment.show(ft, DIALOG_LOST);
}
return true;
}
});
とs etOnDrawerItemClickListener
I INをフラグメントBからメソッドを呼びたい。
そして私の質問はどうですか?