4
我目前的項目使用一些ListFragments
來顯示數據行。 行每隔幾秒就會動態更新一次。行數隨每次更新和每個ListFragment
而變化。動態更改ViewPagerIndicator標題
我想行的數量顯示給用戶,並認爲這對於一個完美的地方是旁邊Fragment
的在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
值發生變化時強制更新標題?
聽起來合乎邏輯,但我想我做錯了。如果我通過'mPagerAdapter.notifyDataSetChanged();在實例上調用它,'沒有任何變化,當我通過方法直接調用它時,它也不會改變'public void refresh(){this.notifyDataSetChanged(); '在PagerAdaper中。 – msal
您應該在'TitlePageIndicator'實例本身中調用它,而不是適配器。 –
非常感謝,傑克!現在它像一個魅力。你是最好的! :) – msal