动态设置textview显示行数
来源:互联网 发布:经传软件指标详解 编辑:程序博客网 时间:2024/06/05 05:55
用setMaxLines,不要用setLines,灵活一些
holder.tvPadGradeContent.setMaxLines(1);
package com.mine.project.function.adapter;import android.content.Context;import android.support.v7.widget.RecyclerView;import android.text.TextUtils;import android.util.Log;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.RatingBar;import android.widget.TextView;import com.mine.project.R;import com.mine.project.function.domain.CommentInfo;import com.mine.project.network.utils.MyDateUtil;import java.util.ArrayList;import java.util.List;/** * Created by wy on 2017/7/8. */public class PadGradeAdpter extends RecyclerView.Adapter<PadGradeAdpter.ViewHolder> { private List<CommentInfo> objects = new ArrayList<CommentInfo>(); private Context context; private LayoutInflater layoutInflater; private int mLines; public PadGradeAdpter(Context context, List<CommentInfo> objects) { super(); this.context = context; this.layoutInflater = LayoutInflater.from(context); this.objects = objects; } public CommentInfo getItem(int position) { return objects.get(position); } @Override public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { ViewHolder holder = new ViewHolder(LayoutInflater.from(context).inflate(R.layout.item_padgrade, parent, false)); return holder; } @Override public void onBindViewHolder(ViewHolder holder, int position) { initializeViews((CommentInfo) getItem(position), holder);// objects=(CommentInfo) getItem(position); } @Override public int getItemCount() { return objects.size(); } private void initializeViews(CommentInfo object, final ViewHolder holder) { //TODO implement String mCommentTime = new MyDateUtil().change(object.getCommentTime()); holder.tvPadGradeTime.setText(mCommentTime); holder.rbOrderDetailXingxing.setRating((float) object.getScore()); holder.tvPadGradeContent.setText(object.getContent() + ""); holder.tvPadGradeContent.post(new Runnable() { @Override public void run() { mLines = holder.tvPadGradeContent.getLineCount(); Log.e("1", "run:--------->mLines: "+ mLines); if (mLines > 1) { holder.tvPadGradeContent.setLines(1); holder.tvPadGradeContent.setEllipsize(TextUtils.TruncateAt.END); holder.mTvZhankai.setVisibility(View.VISIBLE); } holder.mTvZhankai.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Log.e("1", "run:--------->66 " + mLines); holder.tvPadGradeContent.setLines(mLines); holder.mTvZhankai.setVisibility(View.GONE); } }); } }); } protected class ViewHolder extends RecyclerView.ViewHolder { private TextView tvPadGradeTime; private RatingBar rbOrderDetailXingxing; private TextView tvPadGradeContent; private TextView mTvZhankai; public ViewHolder(View view) { super(view); tvPadGradeTime = (TextView) view.findViewById(R.id.tv_padGradeTime); rbOrderDetailXingxing = (RatingBar) view.findViewById(R.id.rb_order_detail_xingxing1); tvPadGradeContent = (TextView) view.findViewById(R.id.tv_padGradeContent); mTvZhankai = (TextView) view.findViewById(R.id.tv_zhankai); } }}
package com.mine.project.function.adapter;import android.content.Context;import android.support.v7.widget.RecyclerView;import android.text.TextUtils;import android.util.Log;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.RatingBar;import android.widget.TextView;import com.mine.project.R;import com.mine.project.function.domain.CommentInfo;import com.mine.project.network.utils.MyDateUtil;import java.util.ArrayList;import java.util.List;/** * Created by wy on 2017/7/8. */public class PadGradeAdpter extends RecyclerView.Adapter<PadGradeAdpter.ViewHolder> { private List<CommentInfo> objects = new ArrayList<CommentInfo>(); private Context context; private LayoutInflater layoutInflater; private int mLines; public PadGradeAdpter(Context context, List<CommentInfo> objects) { super(); this.context = context; this.layoutInflater = LayoutInflater.from(context); this.objects = objects; } public CommentInfo getItem(int position) { return objects.get(position); } @Override public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { ViewHolder holder = new ViewHolder(LayoutInflater.from(context).inflate(R.layout.item_padgrade, parent, false)); return holder; } @Override public void onBindViewHolder(ViewHolder holder, int position) { initializeViews((CommentInfo) getItem(position), holder);// objects=(CommentInfo) getItem(position); } @Override public int getItemCount() { return objects.size(); } private void initializeViews(CommentInfo object, final ViewHolder holder) { //TODO implement String mCommentTime = new MyDateUtil().change(object.getCommentTime()); holder.tvPadGradeTime.setText(mCommentTime); holder.rbOrderDetailXingxing.setRating((float) object.getScore()); holder.tvPadGradeContent.setText(object.getContent() + ""); holder.tvPadGradeContent.post(new Runnable() { @Override public void run() { mLines = holder.tvPadGradeContent.getLineCount(); Log.e("1", "run:--------->mLines: "+ mLines); if (mLines > 1) { holder.tvPadGradeContent.setLines(1); holder.tvPadGradeContent.setEllipsize(TextUtils.TruncateAt.END); holder.mTvZhankai.setVisibility(View.VISIBLE); } holder.mTvZhankai.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Log.e("1", "run:--------->66 " + mLines); holder.tvPadGradeContent.setLines(mLines); holder.mTvZhankai.setVisibility(View.GONE); } }); } }); } protected class ViewHolder extends RecyclerView.ViewHolder { private TextView tvPadGradeTime; private RatingBar rbOrderDetailXingxing; private TextView tvPadGradeContent; private TextView mTvZhankai; public ViewHolder(View view) { super(view); tvPadGradeTime = (TextView) view.findViewById(R.id.tv_padGradeTime); rbOrderDetailXingxing = (RatingBar) view.findViewById(R.id.rb_order_detail_xingxing1); tvPadGradeContent = (TextView) view.findViewById(R.id.tv_padGradeContent); mTvZhankai = (TextView) view.findViewById(R.id.tv_zhankai); } }}
阅读全文
0 0
- 动态设置textview显示行数
- 在TextView显示前测量字符串设置显示行数
- Textview显示指定行数
- TextView显示行数问题
- android让textview设置规定行数,多余部分省略号显示
- 设置TextView的最大行数,如果文字超出最大行数显示"..."
- 自定义TextView显示指定行数
- 永久设置显示行数
- TextView设置字体显示个数,超出部分省略号表示, 或者设置显示行数,超出部分按省略号显示
- TextView设置最大行数、或者最多显示6个字、结束时为省略号
- TextView的字数行数限制显示
- 动态设置textView 位置
- 动态设置TextView值
- TextView 动态设置图片
- TextView动态设置字体
- TextView 设置显示省略号
- 设置Eclipse显示代码行数
- Textview动态设置颜色问题
- Spring Boot 系列(一)快速入门
- CocoaPods创建管理类库的步骤
- Android ImageView 图片拉伸,填满控件
- Markdown里面的流程图
- RMI垃圾收集简介
- 动态设置textview显示行数
- 浅谈RMQ算法
- 查看uGUI UI组件生成的顶点数
- python正则表达式一:match、search和findall
- Pycharm如何自动换行
- Apache Maven 入门篇(下)
- Android:dagger2让你爱不释手-重点概念讲解、融合篇
- swift中的动画
- Linux磁盘与文件系统管理