Fragment
が実際に画面に表示されたときを把握しておらず、別のFragment
がそれを置き換えたときに非表示にしています。私が助けることができる方法を知る必要があることを意味する。How to know [PagerAdapterにはない]画面にフラグメントが表示されましたか?
これまでに以下の方法で試してみました。これらのメソッドは呼び出していません。私はPagerAdaper
の中にFragments
を使用していません(SO答えによると)。
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
super.setUserVisibleHint(isVisibleToUser);
}
@Override
public void onHiddenChanged(boolean hidden) {
super.onHiddenChanged(hidden);
}
@Override
public void setMenuVisibility(boolean menuVisible) {
super.setMenuVisibility(menuVisible);
}
は、最後に私は、彼らが呼んでいるの両方が、ここで問題がonDetach
である第2のフラグメントのonAttach
後に呼び出している
@Override
public void onAttach(Context context) {
super.onAttach(context);
}
@Override
public void onDetach() {
super.onDetach();
}
で試してみました。
何とか私は何もしなかった。
お読みいただきありがとうございます!
「表示」状態を知るには良いですが、「非表示」状態はどうですか? –
transaction.add()をtransaction.hide()メソッドで使用している場合は、必ず@Overrideを返します。 public void onHiddenChanged(boolean hidden){ super.onHiddenChanged(hidden); } このメソッドは呼び出します。 –