ExpandableTextView—可以伸缩的文本
2017-01-15 17:07
302 查看
介绍
ExpandableTextView 是一个Android库,使开发人员能够轻松地创建一个TextView可以展开/折叠就像谷歌Play的应用说明。随意使用它所有你想在你的Android应用程序,只要你引用这个项目。控件一般用在应用详情页面的简介中,可伸缩扩展的。展示图
依赖
GitHub源码 点击查看dependencies { compile 'com.ms-square:expandableTextView:0.1.4' }
)
使用这种库其实是很简单的,只要看看提供的源代码示例。(看在一个ListView的使用sampletextlistadapter.java)
注意:查看id TextView和ImageButton必须设置为“@ id / expandable_text”和“@ id / expand_collapse”提供给这个库使用,固定的。
另外,你可以设置你的XML布局文件中的下列属性来定制的expandabletextview行为。
1、maxcollapsedlines(默认为8)文本行可以显示当TextView行数最大数量
2、animduration(默认为300ms)为展开/折叠的动画时间
3、animalphastart(默认为0.7f)透明度值的TextView当动画开始(注)如果您想禁用α动画设置这个值为1
4、expanddrawable自定义图像设置为ImageButton展开方法
5、collapsedrawable自定义图像设置为ImageButton关闭的方法
栗子1:
<com.ms.square.android.expandabletextview.ExpandableTextView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:expandableTextView="http://schemas.android.com/apk/res-auto" android:id="@+id/expand_text_view" android:layout_width="match_parent" android:layout_height="wrap_content" expandableTextView:maxCollapsedLines="4" expandableTextView:animDuration="200"> <TextView android:id="@id/expandable_text" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginLeft="10dp" android:layout_marginRight="10dp" android:textSize="16sp" android:textColor="#666666" /> <ImageButton android:id="@id/expand_collapse" android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="16dp" android:layout_gravity="right|bottom" android:background="@android:color/transparent"/> </com.ms.square.android.expandabletextview.ExpandableTextView>
栗子二:
// 示例代码来设置文本内容的expandabletextview ExpandableTextView expTv1 = (ExpandableTextView) rootView.findViewById(R.id.sample1) .findViewById(R.id.expand_text_view); // 重要的调用setText的expandabletextview设置文字显示的内容 expTv1.setText(getString(R.string.dummy_text1));
案例代码:
<LinearLayout xmlns:tools="http://schemas.android.com/tools" xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="8dp" android:background="#FFFFFF" android:orientation="vertical" android:padding="6dp" > <com.ms.square.android.expandabletextview.ExpandableTextView xmlns:expandableTextView="http://schemas.android.com/apk/res-auto" android:id="@+id/part4_expand_layout" android:layout_width="match_parent" android:layout_height="wrap_content"> expandableTextView:maxCollapsedLines="3"//折叠状态下显示最大行数 expandableTextView:animDuration="500"//开启关闭动画执行时间 expandableTextView:expandDrawable="@drawable/arrow_down"//图标箭头 expandableTextView:collapseDrawable="@drawable/arrow_up" <LinearLayout android:id="@+id/part4_ll" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <TextView style="@style/Text_Detail" android:layout_weight="1" android:layout_width="0dp" android:text="简介" /> <ImageButton android:id="@id/expand_collapse"//固定的id名称才能匹配上这个库 android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@android:color/transparent" android:src="@drawable/arrow_down" /> </LinearLayout> <TextView style="@style/Text_Detail"//固定的id名称才能匹配上这个库 android:id="@id/expandable_text" android:text="我是简介我是简介我是简介我是简介我是简介我是简介我是简介我是简介我是简介我是简介我是简介我是简介我是简介我是简介我是简介我是简介我是简介我是简介我是简介我是简介我是简介我是简介我是简介我是简介我是简介我是简介我是简介我是简介我是简介我是简介我是简介"/> </com.ms.square.android.expandabletextview.ExpandableTextView> </LinearLayout>
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.include_app_detail_part4); // 经过配置之后必须调用代码设置内容才会显示 ExpandableTextView expand_layout= (ExpandableTextView) findViewById(R.id.expand_layout); //setText();传入你需要展示内容的参数 expand_layout.setText(getString(R.string.desc)); } }
相关文章推荐
- android ExpandableTextView-自定义可以动态展开/收缩显示长文本的TextView
- android ExpandableTextView-自定义可以动态展开/收缩显示长文本的TextView
- 自定义控件,可以伸缩的textview
- android ExpandableTextView可伸缩的TextView
- textview第一次出现不可滚动文本,但是点击出现键盘,键盘落下,就可以滚动问题
- Android 使TextView文本可以水平和垂直滚动
- 使textView中的文本可以滑动
- 使textView中的文本可以滑动
- 可伸缩的文本控件ExpandTextView
- 使TextView文本可以水平和垂直滚动
- ExpandableTextView可以展开和收缩的TextView
- 使TextView文本可以水平和垂直滚动
- TextView 实现富文本 可以点击
- 用开源项目ExpandableTextView打造可以下拉扩展的TextView
- textView 自动换行, 可以文本内容动态移动
- 用开源项目ExpandableTextView打造可以下拉扩展的TextView
- android ExpandableTextView 的实现,可以在listview中利用
- Android TextView中部分文本可变,而且颜色不一致的解决方法
- 可以响应各个方向CompoundDrawables点击操作的TextView的实现原理
- Android在文本中添加超链接 (TextView)