簡體   English   中英

獲取膨脹線性布局的高度

[英]Get Height of inflated Linear Layout

我正在使用以下方法Android:展開/折疊動畫 ,以便在列表視圖中具有可擴展的linearlayout。 我的列表視圖行顯示了一個帶有簡短描述的線性布局,當我單擊此列表視圖時,我調用AsyncTask來獲取互聯網上的詳細描述,填充該行的隱藏線性布局並展開以顯示接收到的數據。

問題是,如果我將目標高度設置為正在擴展的隱藏列表視圖,則一切工作都很好,但是我不知道我將從AsyncTask接收多少數據,因此我需要獲取膨脹的隱藏對象的高度線性布局。

我已經嘗試過:

閱讀網絡上的一些資料后,我發現視圖在屏幕中繪制后僅具有高度。 那么,如何將此高度設置為擴展布局的目標的最佳方法是什么?

我在asyncTask的onPostExecute中擴大和擴展布局。

考慮將Runnable發布到膨脹視圖

final View view = findViewById(R.id.something);
view.post(new Runnable()
    {
        @Override
        public void run() {
            Log.d(TAG, "Height = "+view.getHeight());
        }
    });

該可運行對象將保留在事件隊列中,直到視圖完全膨脹為止,以便getHeight()和getWidth()方法返回非零值。 Romain Guy的解釋在這里

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM