国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android實現下拉刷新的視圖和圖標的旋轉

2019-12-12 03:29:48
字體:
來源:轉載
供稿:網友

一、下拉才出現的視圖

pull_to_refresh_header.xml

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:id="@+id/pull_to_refresh_header"    android:orientation="vertical"    android:layout_width="match_parent"    android:layout_height="wrap_content"    android:background="#F3F3F3"> <RelativeLayout  android:layout_width="match_parent"  android:layout_height="wrap_content"  android:paddingTop="23dp">  <LinearLayout        android:id="@+id/pull_to_refresh_view"   android:layout_width="wrap_content"   android:layout_height="wrap_content"   android:orientation="vertical"   android:layout_centerHorizontal="true">   <TextViewandroid:id="@+id/pull_to_refresh_text"    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:layout_gravity="center"android:text="@string/pull_to_refresh_text"    android:textColor="#777777"    android:textSize="16sp"/>   <TextViewandroid:id="@+id/pull_to_refresh_update_text"    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:layout_gravity="center"android:text="@string/pull_to_refresh_update_text"    android:textColor="#999999"    android:textSize="14sp"/>  </LinearLayout>  <ProgressBarandroid:id="@+id/pull_to_refresh_progress"   android:layout_width="30dp"   android:layout_height="30dp"android:layout_toLeftOf="@id/pull_to_refresh_view"   android:layout_marginRight="22dp"   android:layout_marginTop="5dp"   android:indeterminate="true"android:indeterminateDrawable="@drawable/ic_loading_refresh"   android:visibility="gone"/>  <ImageView   android:id="@+id/pull_to_refresh_image"   android:layout_width="32dp"   android:layout_height="32dp"android:layout_toLeftOf="@id/pull_to_refresh_view"   android:layout_marginRight="20dp"   android:layout_marginTop="5dp"   android:src="@drawable/ic_refresh_down"   android:scaleType="centerInside"android:contentDescription="@string/app_name"/> </RelativeLayout> <View  android:layout_width="match_parent"  android:layout_height="15dp"/></LinearLayout>

ic_loading_refresh.xml

<?xml version="1.0" encoding="utf-8"?><rotate xmlns:android="http://schemas.android.com/apk/res/android" android:drawable="@drawable/ic_loading" android:fromDegrees="0" android:toDegrees="360" android:pivotX="50%" android:pivotY="50%" />

1、ProgressBar的indeterminate屬性,代表進程的時間是否不確定。

2、黃色底的是Android Studio的提示。第一個提示的是,當LinearLayout中的Text拓展得足夠長時,會與ImageView重疊,實際效果是把ImageView給覆蓋了。第二個是,建議用toStartOf代替toLeftOf,用marginEnd代替marginRight等。原因和影響還沒完全搞懂。

二、圖標旋轉的動畫

private ImageView mPull_to_refresh_image;private RotateAnimation mFlipAnimation;...  mFlipAnimation = new RotateAnimation(0, -180, RotateAnimation.RELATIVE_TO_SELF, 0.5f,    RotateAnimation.RELATIVE_TO_SELF, 0.5f);  mFlipAnimation.setInterpolator(new LinearInterpolator());  mFlipAnimation.setDuration(250);  mFlipAnimation.setFillAfter(true);...mPull_to_refresh_image.startAnimation(mFlipAnimation);

1、構造方法:

public RotateAnimation(float fromDegrees, float toDegrees, int pivotXType, float pivotXValue,   int pivotYType, float pivotYValue)

(1)toDegrees - fromDegrees < 0 就會是逆時針旋轉,反之是順時針。這是我取不同值測試出來的。水平線右邊是0°,或者360°,左邊是180°,或者是-180°。

(2)pivotType是樞軸類型,也就是旋轉中心。RELATIVE_TO_SELF代表相對這個view本身。0.5f代表這個view一半大小的位置。

2、setInterpolator作用是設置速度器。LinearInterpolator是勻速加速器,也就是勻速播放動畫。

3、setDuration作用是設置動畫時長,以毫秒為單位。

4、setFillAfter作用是,當參數為true時,動畫播放完后,view會維持在最終的狀態。而默認值是false,也就是動畫播放完后,view會恢復原來的狀態。

以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持武林網!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 屏东市| 平邑县| 五河县| 惠水县| 进贤县| 贞丰县| 阳西县| 徐水县| 苏尼特左旗| 无为县| 黎平县| 勐海县| 新营市| 维西| 大兴区| 平乐县| 南丹县| 巴林右旗| 崇明县| 特克斯县| 同德县| 望城县| 鄢陵县| 宁强县| 凌源市| 渝中区| 灵川县| 平乐县| 陇川县| 陈巴尔虎旗| 逊克县| 闽侯县| 万年县| 桐庐县| 安化县| 木兰县| 中山市| 夹江县| 松原市| 化德县| 辛集市|