問題タブ [android-tablayout]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - ツールバーが TabLayout で折りたたまれない
ユーザーがのタブのToolbar
1 つ (によって提供される) でスクロールしたときに折りたたむようにしたいと思います。TabLayout
ViewPager
これは私が望む機能です:
ただし、私のレイアウトはスクロールしないだけでなく、下部のコンテンツを切り取ります (正確には、ツールバーの高さである 48dp を切り取ります)。
ViewPager を使用して、各 Fragment をタブとして表示します。フラグメントは、単純ScrollView
なTextView
. レイアウトは次のとおりです。
各フラグメントには次のレイアウトがあります。
ViewPager は ViewPagerAdapter によって設定されます。
java - Android タブレイアウト
この Androidライブラリを使用しています。ビューを変更するためにスワイプするのではなく、タップします。どちらも機能するということですが、どうにかしてスワイプを無効にすることはできますか?
android - TabLayout のタイトルを更新する
をTabLayout
介して2つのフラグメント(両方ともアイテムのリストを保持する)が取り込まれた(デザインライブラリからの)を持っていFragmentPagerAdapter
ます。
2 つのリストは相互に関連しています。どちらも合計人数を保持し、その人がどちらのリストに含まれているかによって、その人が指名されるかどうかが決まります。メンバーをあるリストから別のリストにスワイプしたり、その逆にスワイプしたりできます。
問題
タブのタイトルに (特定のリストに含まれる人数の) カウントを表示したい/必要があります。簡単です。少しコードを追加するgetPageTitle
と、問題なく動作します。リストを変更するまでは、FragmentPagerAdapter
タイトルをもう一度更新するように に指示する必要があります。
これまでのところ、私が見つけた唯一の解決策は次のように呼び出すことでした:mTabLayout.setTabsFromPagerAdapter(mAdapter);
このメソッドが行うことはすべて、持っremoveAllTabs
ているものをループしてFragmentPagerAdapter
、それらを新しいものとして追加します。
これはタイトルでは機能しますが、あまり効率的ではありませんが、最も重要なことは、最初のタブが再び選択されたアイテムになることです。
通話mViewPager.setCurrentItem(int item)
後に追加しようとしましたが、うまくいきません。mTabLayout.setTabsFromPagerAdapter(mAdapter);
私も次のようなことを試しました
効果なし。