最近在做项目时需求是textview内容可以展开和收起,TextView设置maxLines和ellipsize后在2.3系统中文字显示不全。网上查了很多资料依然没有解决,然后开始思考为什么其他属性都没有添加时没有问题。考虑在展开和收起时设置ellipsize属性,结果发现问题解决。
好了,代码贴上。
private void handleMoviePlot() {
mPlotExpand = !mPlotExpand;
if (mPlotExpand) {
// Ellipsize取消Ellipsize属性
mMoviePlotTv.setEllipsize(null);
mMoviePlotTv.setMaxLines(Integer.MAX_VALUE);
mMovieShowAllBtn.setBackgroundResource(R.drawable.movies_down);
} else {
// 添加Ellipsize属性
mMoviePlotTv.setEllipsize(TruncateAt.END);
mMoviePlotTv.setMaxLines(3);
mMovieShowAllBtn.setBackgroundResource(R.drawable.movies_up);
}
Logger.e("hzd", "当前状态:" + mPlotExpand);
}