1

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

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

4

1 回答 1

9

从样品中获得批准的方法

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

  1. 创建一个带有文本覆盖的主题(例如 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. 将自定义主题应用于 AndroidManifest.xml 中的活动

    <activity
        ...
        android:theme="@style/Theme.Holo.CustomPtrHeader" />
    

或注册您自己的 HeaderTransformer

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

或者有点 hackier 的方式

请注意,setPullText它不在HeaderTransformer接口上,它是一个实例方法DefaultHeaderTransformer

attacher = PullToRefreshAttacher.get(this);
attacher.addRefreshableView(listView, this);
transformer = ((DefaultHeaderTransformer)attacher.getHeaderTransformer());
transformer.setRefreshingText("Pulling down the internet");
于 2013-10-05T19:11:51.880 回答