Sim*_*mon 13 android listview android-animation swiperefreshlayout
我对Android很新,我正在谷歌网站上探索示例代码.我目前的代码是SwipeRefreshLayout:http://developer.android.com/samples/SwipeRefreshLayoutBasic/index.html
在代码中,我们看到正在为列表视图执行SwipeRefreshLayout,换句话说,如果向下拖动列表视图,则会触发该方法并且listview将自行刷新.
<android.support.v4.widget.SwipeRefreshLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/swiperefresh"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ListView
android:id="@android:id/list"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</android.support.v4.widget.SwipeRefreshLayout>
Run Code Online (Sandbox Code Playgroud)
让我感到困惑的是,当您向下拖动时,进度动画栏的代码中没有布局显示在列表视图的顶部.你认为SwipeRefreshLayout在你向下拖动时自动生成一个进度动画条而不需要用户在xml中为它指定任何布局吗?
例如,如果想要在进度动画栏的两端放置填充,以便在刷新时动画不会触摸屏幕的末端,那么如何进行操作?
该https://developer.android.com/reference/android/support/v4/widget/SwipeRefreshLayout.html并没有真正说什么.
Gil*_*ach 24
你无法改变动画.
在SwipeRefreshLayout你不能定制太多; 我相信这是Google试图让开发人员坚持常见模式的尝试.你可以设计的样式是动画的四种颜色,用setColorScheme().
SwipeRefreshLayout注意在它的顶部显示其预定义的动画.这可以是当canChildScrollUp()返回false并且用户'拉下'或者设置时setRefreshing(true).关闭动画setRefreshing(false).将您的逻辑放在onRefreshing()侦听器的方法中.canChildScrollUp()如果您放置了不属于ListView您的内容,请覆盖SwipeRefreshLayout.你应该好好离开这里.
Ste*_*tes 11
虽然你无法改变它,你仍然可以隐藏它,然后一旦触发就显示你自己:-)
SwipeRefreshLayout swiperefresh = (SwipeRefreshLayout)root.findViewById(R.id.swiperefresh);
swiperefresh.setOnRefreshListener(this);
swiperefresh.setColorSchemeColors(0,0,0,0);
swiperefresh.setProgressBackgroundColor(android.R.color.transparent);
Run Code Online (Sandbox Code Playgroud)
笔记:
在eclipse中你必须添加@SuppressLint("ResourceAsColor")来编译它.
你仍然需要在适当的时间点调用setRefreshing(false),否则onRefresh不会再次触发.
| 归档时间: |
|
| 查看次数: |
25282 次 |
| 最近记录: |