第一步:接口請求返回數據
第二步:使用handler和textview.getLineCount方法判斷是否超過指定行數:
community_desc_more.setVisibility(View.VISIBLE); community_desc.setMaxLines(3); community_desc.setEllipsize(TextUtils.TruncateAt.END);
第三步:點擊展開按鈕判斷
int communityLineCount = community_desc.getLineCount(); if (communityLineCount > 3) { community_desc_more.setText("展開"); community_desc.setMaxLines(3); } else { community_desc.setMaxLines(Integer.MAX_VALUE); community_desc_more.setText("收起"); }
有個要注意的地方,getLineCount得到的是textview的真正行數,但是如果使用了
setEllipsize(TextUtils.TruncateAt.END)
得到的卻是可見的行數
