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

首頁 > 系統 > Android > 正文

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

2019-10-23 18:35:47
字體:
來源:轉載
供稿:網友

一、下拉才出現的視圖

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會恢復原來的狀態。

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


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 无锡市| 上饶市| 朝阳区| 沂源县| 镇沅| 安泽县| 观塘区| 杭锦后旗| 陕西省| 慈溪市| 肇东市| 炎陵县| 屏南县| 开远市| 纳雍县| 德格县| 民县| 宜章县| 武城县| 星座| 牡丹江市| 耒阳市| 永安市| 惠水县| 绥德县| 盐津县| 邳州市| 奇台县| 乌拉特前旗| 拜泉县| 阿勒泰市| 象州县| 卓尼县| 呼伦贝尔市| 兴化市| 光山县| 邵阳市| 阳江市| 河津市| 苍溪县| 孟州市|