私のViewPagerは、ネストされたフラグメントに配置されています。これはナビゲーション・ドロワーも持っているからです。私の質問はMainActivity.javaでviewpagerのインスタンスを呼び出すことができるので、メソッドonBackPressed()
のMainActivity.javaからメソッドsetCurrentItem()
を使ってviewpagerの現在の項目を設定することができます。例えば、ユーザーがviewpagerの3番目のフラグメントにあり、彼は最初の断片で返されるべきです。アクティビティでviewpagerインスタンスをどのように呼び出す必要がありますか?
0
A
答えて
0
まず、RecyclerViewをpublicとして宣言する必要があります。静的でなければならないかどうかはわかりませんが、それが必要かどうかを教えてくれます。
第2に、RecyclerViewを保持するフラグメントのインスタンスを呼び出す必要があります。 たとえば、Fragment recyclerFrag = new RecyclerFrag();
その後、そのインスタンスからRecyclerViewを呼び出して、setCurrentItem()
を使用してみてください。たとえば、recyclerFrag.recyclerView.setCurrentItem(0)
です。
0
解決策が見つかりました。最初にFragmentActivityに1つのメソッドを作成し、ViewPager
を初期化し、戻り値の型をViewPager
に設定する必要があります。このような何か:
public ViewPager getViewPager() {
return mViewPager; // instance of view pager
}
あなたは、このようなビューのページャのインスタンスを呼び出している活動であなたのフラグメントの作成対象後:
YourFragment fragment = new YourFragment();
そして、私の場合はonBackPressed()
にviewpager呼び出す必要があります:
HomeFragment fragment1 = new HomeFragment();
if (fragment1.getViewPager().getCurrentItem() == 1 || fragment1.getViewPager().getCurrentItem() == 2) {
fragment1.getViewPager().setCurrentItem(0);
} else {
super.onBackPressed();
}
関連する問題
- 1. PhoneStateListenerでアクティビティを呼び出す必要があります
- 2. 各アクティビティでMobileServiceSyncContext.initializeを呼び出す必要がありますか?
- 3. onBackPressed()は前のアクティビティのonBackPressed()を呼び出す必要があります
- 4. コードビハインドファイルでValidate()を呼び出す必要がありますか?
- 5. UITableViewCellでdeinitを呼び出す必要がありますか?
- 6. ARCでdispatch_releaseを呼び出す必要がありますか?
- 7. iOSアプリでMagicalRecord.cleanUp()をどこで呼び出す必要がありますか?
- 8. いつsetContentAspectRatioを呼び出す必要がありますか?
- 9. クローズ接続を呼び出す必要がありますか?
- 10. Graphics.Dispose()を呼び出す必要がありますか?
- 11. [convertToGl]を呼び出す必要がありますか?
- 12. いつjava.sql.Connection.rollback()を呼び出す必要がありますか?
- 13. SqlTransactionはDisposeを呼び出す必要がありますか?
- 14. いつMessageQueue.EndReceive()を呼び出す必要がありますか?
- 15. GLSurfaceView:onPause/onResumeを呼び出す必要がありますか?
- 16. 毎回FacebookSdk.sdkInitialize()を呼び出す必要がありますか?
- 17. TForm.ManualDockはonFormShowを呼び出す必要がありますか?
- 18. リポジトリは別のリポジトリを呼び出す必要がありますか?あるいは、リポジトリがサービス層を呼び出す必要がありますか?
- 19. iOSでASIHTTPRequest非同期呼び出しをどのように処理する必要がありますか?
- 20. JavaでPerlスクリプトをどのように呼び出す必要がありますか?
- 21. どこでFree()関数を呼び出す必要がありますか?
- 22. onDestroy()でthread.joinを呼び出す必要があります
- 23. javascript/jqueryからcshtmlファイルをどのように呼び出す必要がありますか?
- 24. このメソッドを呼び出すには、 "Membership.Provider"プロパティが "ExtendedMembershipProvider"のインスタンスである必要があります
- 25. realm.close()はいつ呼び出す必要がありますか?
- 26. この関数呼び出しをどのように理解する必要がありますか?
- 27. MonitorEnterの使用:synchronizedメソッドをどのように呼び出す必要がありますか?
- 28. どのTextFieldDelegateメソッドを呼び出す必要がありますか?
- 29. Pythonエラー "unboundメソッドを呼び出す必要があります"?
- 30. 親プロセスで常にlisten()を呼び出す必要がありますか?