4

私の現在のプロジェクトではListFragments、データの行を表示するためにいくつかを使用しています。行は数秒ごとに動的に更新されます。行の量は、更新ごとおよびごとに異なりますListFragment

ユーザーに行数を表示したいと思います。そのための最適な場所は、 ViewPagerIndicatorFragmentののタイトルの横にあると思います。理解を深めるためにサンプル画像を提供しました。

Viewpagerindicator

悲しいことに、私はこれを達成する方法がかなりわかりません。私は次のことを試しました:

public class PagerAdapter extends FragmentPagerAdapter {
    private int numOne = 0;
    private int numTwo = 0;

    // ...

    @Override
    public CharSequence getPageTitle(int position) {
        switch (position) {
        case 0:
            return "List 1 (" + numOne + ")";
        case 1:
            return "List 2 (" + numTwo + ")";
        default:
            return "";
    }

    public void setNumOne(int num) {
        this.numOne = num;
    }

    public void setNumTwo(int num) {
        this.numTwo = num;
    }
}

ここでメソッドを呼び出すと、setNumXXX()フラグメント間を移動するまで何も起こりません。これにより、が起動するように見えgetPageTitle()ます。

私の質問は、値が変更されるたびにタイトルを強制的に更新するにはどうすればよいですか?num

4

1 に答える 1

14

notifyDataSetChanged()インジケーターインスタンスを呼び出すと、それ自体が再描画され、新しいタイトルが取得されます。

于 2012-08-29T21:37:14.450 に答える