AlertDialog 顯示後,其高度會依內容與螢幕解析度動態決定。若要在程式碼中取得對話框實際高度,必須等待版面配置完成後再讀取。
View itemView = listAdapter.getView(position, null, listView);
itemView.measure(
MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED),
MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED));
int height = itemView.getMeasuredHeight();
注意:在對話框尚未顯示前直接讀取高度,通常會取得 0,因此請確保在版面繪製完成後再操作。