安卓实现下拉刷新
发布时间:2016-04-27 11:00:04
这里我们将采取的方案是使用组合View的方式,先自定义一个布局继承自LinearLayout,然后在这个布局中加入下拉头和ListView这两个子元素,并让这两个子元素纵向排列。初始化的时候,让下拉头向上偏移出屏幕,这样我们看到的就只有ListView了。然后对ListView的 ...
- 这里我们将采取的方案是使用组合View的方式,先自定义一个布局继承自LinearLayout,然后在这个布局中加入下拉头和ListView这两个子元素,并让这两个子元素纵向排列。初始化的时候,让下拉头向上偏移出屏幕,这样我们看到的就只有ListView了。然后对ListView的touch事件进行监听,如果当前ListView已经滚动到顶部并且手指还在向下拉的话,那就将下拉头显示出来,松手后进行刷新操作,并将下拉头隐藏。那我们现在就来动手实现一下,新建一个项目起名叫PullToRefreshTest,先在项目中定义一个下拉头的布局文件pull_to_refresh.
1 <RelativeLayout 2 3 android:id="@+id/pull_to_refresh_head" 4 android:layout_width="fill_parent" 5 android:layout_height="60dip" > 6 <LinearLayout 7 android:layout_width="200dip" 8 android:layout_height="60dip" 9 android:layout_centerInParent="true"10 android:orientation="horizontal" >11 <RelativeLayout12 android:layout_width="0dip"13 android:layout_height="60dip"14 android:layout_weight="3"15 >16 <ImageView 17 android:id="@+id/arrow"18 android:layout_width="wrap_content"19 android:layout_height="wrap_content"20 android:layout_centerInParent="true"21 android:src='/images/loading.gif' data-original="@drawable/arrow"22 />23 <ProgressBar 24 android:id="@+id/progress_bar"25 android:layout_width="30dip"26 android:layout_height="30dip"27 android:layout_centerInParent="true"28 android:visibility="gone"29 />30 </RelativeLayout>31 <LinearLayout32 android:layout_width="0dip"33 android:layout_height="60dip"34 android:layout_weight="12"35 android:orientation="vertical" >36 <TextView37 android:id="@+id/description"38 android:layout_width="fill_parent"39 android:layout_height="0dip"40 android:layout_weight="1"41 android:gravity="center_horizontal|bottom"42 android:text="@string/pull_to_refresh" />43 <TextView44 android:id="@+id/updated_at"45 android:layout_width="fill_parent"46 android:layout_height="0dip"47 android:layout_weight="1"48 android:gravity="center_horizontal|top"49 android:text="@string/updated_at" />50 </LinearLayout>51 </LinearLayout>52 </RelativeLayout>
原标题:安卓实现下拉刷新
关键词:
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。