0

viewActivityでviewActionを使用していますが、viewPagerはスクロールできません。また、MainActivityフラグメントの2番目のフラグメントに4つのフラグメントがあります。私はonCreateViewメソッドのすべてのフラグメントでAPIを呼び出しています。しかし、アクティビティが初期化されたときに、すべてのフラグメントonCreateViewメソッドが実行されます。フラグメントを私のAPI呼び出しよりも見えるようにするために修正する方法。フラグメント内のフラグメントを使用する

私は既にsetUserVisibleHintメソッドを試しました。アクティビティが初期化されたときにも動作しています。

この問題を解決するためにフレームレイアウトなどを使用する必要がありますか?

+0

'setVisibility'が呼び出されたとき、パラメータ' visibleToUser'をチェックしていますか?現在表示されているフラグメントの場合はtrue、それ以外の場合はfalseになります。 –

+0

私はチェックしましたが、isVisibleToUserブール値は、アクティビティフラグメントアダプタが設定されている場合にすべてのフラグメントに対して真となります。 –

答えて

0

私があなたをよく理解していれば、断片が見えるときにAPIを呼びたいと思っています。

はい、その後

viewPager.addOnPageChangeListener 

を使用してonPageSelected(int型の位置)コールバックは、ちょうど編集

you'r APIを呼び出す良好な状態を作る場合:「私はドンviewPager

+0

私はFragmentPagerAdapterを使用しており、addonPageChangeListenerメソッドを見つけることができません。 viewPager.addOnPagerChangeListenerを意味しますか? –

+0

はい、私の悪いと私の悪い私の悪いことでした:)そのアダプターメソッドは、そのmViewPager.addOnPageChangeListener(オブジェクト:ViewPager.OnPageChangeListener {}) – sigma119

0

にアダプタを変更なぜあなたはそれらを使用しようとしないときに同じ時間にすべてのフラグメントを読み込んでいるのか分かりません。

しかし、とにかく私はあなたのフラグメントがフラグメントスタックの最上部にあるときに発射される各フラグメント内で、onResumeにあなたのAPIコールメソッドを置く必要があると思う。

+0

私はすべてのフラグメントを一緒にロードしたくない場合はどうすればいいですか? –

+0

私は何をしようとしているのか分かりませんが、私が推測するように、フラグメントを表示する必要があるたびに、アクティビティの内容を置き換えるだけです。 YourFragment fragment = new YourFragment(); getSupportFragmentManager()。beginTransaction()。replace(R.id.content、fragment).commit(); –

関連する問題