时间:2021-05-20
Android自定义TextView仿微信朋友圈文字信息,展开全文功能
代码及注释如下:
首先写一个xml文件 showmore.xml:
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:id="@+id/content" android:layout_width="match_parent" android:layout_height="wrap_content" android:textSize="16sp" android:maxLines="3" android:ellipsize="end"/> <TextView android:id="@+id/hide_show" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/btn_showmore" android:textColor="@color/colorBlue" android:textSize="16sp" android:text="显示更多" android:padding="0dp" /></LinearLayout>//新建java类继承自LinearLayoutpublic class ShowMoreTextView extends LinearLayout {// 用来标记是否为展开状态 private int hideOrShow = 0; private TextView textView; private TextView button; public ShowMoreTextView(Context context) { super(context); } public ShowMoreTextView(Context context, AttributeSet attrs) { super(context, attrs);// 实例化layoutInflater对象,获取到布局填充服务 LayoutInflater layoutInflater = (LayoutInflater)context. getSystemService(Context.LAYOUT_INFLATER_SERVICE);// 填充自定义的布局xml文件 layoutInflater.inflate(R.layout.showmore,this); textView = (TextView)findViewById(R.id.content); button=(TextView) findViewById(R.id.hide_show); button.setText("显示更多");// 隐藏或显示 hideOrShow(); }// 创建setContent方法为TextView填充内容 public void setContent(String content) { textView.setText(content); } public void hideOrShow() { button.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { //由hideOrShow的值确定按钮和textview的状态 if (hideOrShow == 0) { button.setText("收起"); textView.setMaxLines(100); hideOrShow = 2; }else if(hideOrShow==2){ button.setText("显示更多"); textView.setMaxLines(3); hideOrShow = 1; }else if(hideOrShow==1){ button.setText("收起"); textView.setMaxLines(100); hideOrShow=2; } } }); }}接下来就可以引用了,与普通的控件一样 activity_test.xml:
<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.commy.activity.TestActivity"> <com.yunfeng.laojiahenan.view.ShowMoreTextView android:id="@+id/showmore" android:layout_width="match_parent" android:layout_height="wrap_content"/></RelativeLayout>测试类:
public class TestActivity extends AppCompatActivity { private ShowMoreTextView showMoreTextView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_test); showMoreTextView=(ShowMoreTextView)findViewById(R.id.showmore); showMoreTextView.setContent(" There is so much life I've left to live And this fire's burning still When I watch you look at me I think I could find a way To stand for every dream And forsake this solid ground And give up this fear within Of what would happen if they end you I'm in love with you "); }}以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
微信发朋友圈显示所在位置是可以自定义的。 微信朋友圈指的是腾讯微信上的一个社交功能,于微信4.0版本2012年4月19日更新时上线,用户可以通过朋友圈发表文字
最近开发一个项目时,有微信H5网页自定义分享功能,使用了微信JS-SDK的分享到好友和分享到朋友圈功能。微信开发文档这样写的自定义“分享给朋友”及“分享到QQ”
前言在介绍使用微信自定义分享前,我们来先了解一下什么是自定义分享?访问自定义微信外链地址页面,点击红色框位置进行分享给朋友或者朋友圈,具体操作如下图所示:分享后
微信朋友圈怎么转发文字独乐乐不如众乐乐微信朋友圈怎么转发文字独乐乐不如众乐乐微信朋友圈怎么转发文字独乐乐不如众乐乐微信朋友圈怎么转发文字独乐乐不如众乐乐微信朋友
12月25日消息12月23日,微信iOS版7.0.9正式版上线体验,新增聊天消息引用,全新的朋友权限独立设置,朋友圈视频延长至最多30秒,朋友圈自定义表情评论,