Android如何实现带动画效果的可点击展开TextView

  介绍

这篇文章将为大家详细讲解有关Android如何实现带动画效果的可点击展开TextView,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

效果图:

收起(默认)效果:

 Android如何实现带动画效果的可点击展开TextView

点击展开后的效果:

 Android如何实现带动画效果的可点击展开TextView”> <br/> </p> <p> <强>源码:<br/> </强> </p> <p>布局:</p> <pre类= & lt; ? xml  version=?.0“,编码=皍tf-8" ?比;   LinearLayout & lt;   ,android: id=癅 + id/activity_main"   ,xmlns: android=癶ttp://schemas.android.com/apk/res/android"   ,android: layout_width=癿atch_parent"   ,android: layout_height=癿atch_parent"   ,android:取向=皏ertical"   ,比;      & lt;滚动视图   android:才能id=癅 + id/sv"   android:才能layout_width=癿atch_parent"   android:才能layout_height=癿atch_parent"   祝辞才能;      ,& lt; LinearLayout   ,,android: layout_width=癿atch_parent"   ,,android: layout_height=癿atch_parent"   ,,android:背景=? f6f6f6"   ,,android:取向=皏ertical"   ,,android:填充=? dp"比;      & lt; TextView。才能   ,,,android: layout_width=癿atch_parent"   ,,,android: layout_height=皐rap_content"      ,,,android: maxLines=?”;   ,,,android:文本=凹蚪椤?   ,,,android:输入textColor=? 000000“;   ,,,android: textSize=?0 sp"/比;      & lt; TextView。才能   ,,,android: id=癅 + id/tv_des"   ,,,android: layout_width=癿atch_parent"   ,,,android: layout_height=皐rap_content"   ,,,android:输入textColor=? 666666“;   ,,,android: textSize=?8 sp"/比;      ,,& lt;使用   ,,,android: layout_width=癿atch_parent"   ,,,android: layout_height=皐rap_content"   ,,,android: layout_marginTop=? dp"   ,,,android:重力=癱enter_vertical"   ,,,android:取向=癶orizontal"比;      ,,,& lt; ImageView   ,,,,android: id=癅 + id/iv_des_arrow"   ,,,,android: layout_width=?0 dp"   ,,,,android: layout_height=?0 dp"   ,,,,android: layout_alignParentEnd=皌rue"   ,,,,android:背景=癅mipmap/arrow_down"/比;   ,,& lt;/RelativeLayout>      & lt;才能/LinearLayout>      ,& lt;/ScrollView>   & lt;/LinearLayout>

功能实现:

package  com.cnfol.demo;      import  android.animation.Animator;   import  android.animation.ValueAnimator;   import  android.app.Activity;   import  android.os.Bundle;   import  android.view.View;   import  android.view.ViewTreeObserver.OnGlobalLayoutListener;   import  android.widget.ImageView;   import  android.widget.ScrollView;   import  android.widget.TextView;      public  class  MainActivity  extends  Activity  implements  View.OnClickListener  {      ,private  TextView  tv_des;      ,private  ImageView  iv_des_arrow;      ,private  boolean  isExpandDes =,假;//是否展开整个描述      ,private  int  minHeight =, 0;   ,private  int  maxHeight =, 0;      ,private  ScrollView 滚动视图;      ,@Override   ,protected  void  onCreate (Bundle  savedInstanceState), {   super.onCreate才能(savedInstanceState);   ,,setContentView (R.layout.activity_main);      scrollView 才能=,(滚动视图),findViewById (R.id.sv);      tv_des 才能=,(TextView), findViewById (R.id.tv_des);   tv_des.setOnClickListener才能(这个);      iv_des_arrow 才能=,(ImageView), findViewById (R.id.iv_des_arrow);   iv_des_arrow.setOnClickListener才能(这个);      String 才能;s =,“中华人民共和国,简称中国,位于亚洲东部,太平洋西岸,,是工人阶级领导的,以工农联盟为基础的人民民主专政的社会主义国家。\ n" +   ,,,“\ n" +   ,,,,1949年(己丑年)10月1日成立,,以五星红旗为国旗,,《义勇军进行曲》为国歌,,国徽内容包括国旗,天安门,齿轮和麦稻穗,,首都北京,,省级行政区划为23个省,5个自治区,4个直辖市,2个特别行政区,,是一个以汉族为主体民族,由56个民族构成的统一多民族国家,汉族占总人口的91.51%。\ n" +   ,,,“\ n" +   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

Android如何实现带动画效果的可点击展开TextView