/**
* 控制显示内容 行数
* @param tvDetail
*/
private void setShowLines(final TextView tvDetail) {
ViewTreeObserver vto = tvDetail.getViewTreeObserver();
//调用 绘画View之前的回调方法 因为measure 在 draw 之前
vto.addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener() {
@Override
public boolean onPreDraw() {
if(!hasMeasure){
//获取textView的行数
txtLines = tvDetail.getLineCount();
Log.i("tag"," txtLines===================="+ txtLines);
hasMeasure=true;
if(txtLines<=showLines){
//隐藏查看全部
tvShrink.setVisibility(View.GONE);
}else{
//显示查看全部
isShowAll=true;
tvShrink.setVisibility(View.VISIBLE);
tvDetail.setMaxLines(showLines);
}
}
return true;
}
});
}
* 控制显示内容 行数
* @param tvDetail
*/
private void setShowLines(final TextView tvDetail) {
ViewTreeObserver vto = tvDetail.getViewTreeObserver();
//调用 绘画View之前的回调方法 因为measure 在 draw 之前
vto.addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener() {
@Override
public boolean onPreDraw() {
if(!hasMeasure){
//获取textView的行数
txtLines = tvDetail.getLineCount();
Log.i("tag"," txtLines===================="+ txtLines);
hasMeasure=true;
if(txtLines<=showLines){
//隐藏查看全部
tvShrink.setVisibility(View.GONE);
}else{
//显示查看全部
isShowAll=true;
tvShrink.setVisibility(View.VISIBLE);
tvDetail.setMaxLines(showLines);
}
}
return true;
}
});
}