Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android獲取TextView行數方法getLineCount()返回值為0

Android獲取TextView行數方法getLineCount()返回值為0

編輯:關於Android編程

項目中遇到當TextView顯示的數據不超過3行的時候,不顯示下面的展開按鈕,這時候就必須要獲取到此時TextView的行數,查看api發現了getLineCount()方法,當我興高采烈地使用時,卻放心返回值總為空,後來查谷歌才發現說是要先把TextView完全畫出來,才能獲取行數,並說解決方法就是開啟異步去獲取,下面是具體的方法:
private class MyOpenTask extends AsyncTask<Integer, Integer, Integer> {  
       private int[] location = new int[2];  
  
       @Override  
       protected void onCancelled() {  
           super.onCancelled();  
       }  
  
       public void start() {  
           execute(0);  
       }  
  
       @Override  
       protected Integer doInBackground(Integer... params) {  
           return 1;  
       }  
  
       @Override  
       protected void onPostExecute(Integer result) {  
           super.onPostExecute(result);  
           int linecount = mVideoDescription.getLineCount();  
           android.util.Log.e("MvDetail", "linecount1::"+linecount);  
           if(linecount>3){  
               openTV.setVisibility(View.VISIBLE);  
               openIV.setVisibility(View.VISIBLE);  
               openTV.setText("展開全部");  
               mVideoDescription.setClickable(true);  
               openFlag = false;  
           }else{  
               openTV.setVisibility(View.GONE);  
               openIV.setVisibility(View.GONE);  
               mVideoDescription.setClickable(false);  
           }  
       }  
  
   }  

 


  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved