在ActionBar-PullToRefresh库中更改加载屏幕的文本

时间:2013-08-31 11:53:48

标签: android text android-actionbar pull-to-refresh

我已在我的代码中成功实施了ActionBar-PullToRefresh。现在每当我刷新列表时,它都会在ActionBar中显示“正在加载...”文本。

那么如何在ActionBar中更改该文本。我是否直接更改了库中的字符串,还是有其他方法可以做到这一点......

1 个答案:

答案 0 :(得分:9)

来自样本的批准方法

来源:https://github.com/chrisbanes/ActionBar-PullToRefresh/tree/master/samples

  1. Create a theme with text overrides (e.g. ptrPullText)
    也就是res / values / styles.xml:

    <resources>
        <style name="Theme.Holo.CustomPtrHeader" parent="android:Theme.Holo">
            <item name="ptrHeaderStyle">@style/Widget.Custom.PtrHeader</item>
        </style>
        <style name="Widget.Custom.PtrHeader" parent="android:Widget">
            <item name="ptrRefreshingText">Pulling down the internet</item>
        </style>
    </resources>
    
  2. Apply the custom theme to your activity in AndroidManifest.xml

    <activity
        ...
        android:theme="@style/Theme.Holo.CustomPtrHeader" />
    
  3. 或注册您自己的HeaderTransformer

    有关如何执行此操作的示例,请参阅GridView sample

    或者有点粗鲁的方式

    请注意,setPullText界面上没有HeaderTransformer,它是DefaultHeaderTransformer的实例方法:

    attacher = PullToRefreshAttacher.get(this);
    attacher.addRefreshableView(listView, this);
    transformer = ((DefaultHeaderTransformer)attacher.getHeaderTransformer());
    transformer.setRefreshingText("Pulling down the internet");