0
中測量視圖的寬度我在具有水平方向的線性佈局中有兩個文本視圖。文本視圖的寬度是wrap_content。如果兩個文本視圖的寬度總和小於屏幕寬度,那就好了。如果寬度的總和超過了屏幕寬度,那麼我需要將方向從水平改爲垂直。我可以嘗試使用onSizeChanged()函數創建自定義視圖,但我使用兩個文本視圖,所以我不確定當onSizeChanged()在一個文本視圖不會確保其他textview完全繪製以獲取寬度。任何建議對我都很有幫助。如何在android
<LinearLayout android:id="@+id/status_container"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:orientation="horizontal">
<TextView android:id="@+id/view1"
android:layout_height="wrap_content"
android:layout_width="wrap_content"/>
<TextView android:id="@+id/view2"
android:layout_height="wrap_content"
android:layout_width="wrap_content"/>
</LinearLayout>
// In OnCreate() function
TextView view1 = (TextView) findViewById(R.id.view1);
TextView view2 = (TextView) findViewById(R.id.view2);
view1.setText("Good Morning,");
view2.setText("I am Ron");
int view1_width = view1.getWidth();
int view2_width = view2.getWidth();
if ((view1_width + view2_width) > screen_width) {
// Change the Linear Layout orientation to Vertical
}
這裏view1_width和view2_width正在返回0。我要檢查,如果view1_width + view2_width大於屏幕寬度大於我需要改變方向爲垂直,否則水平方向是好的。
-Ron
的目標是什麼? weight =「1」,兩者都會得到兩個元素,每個屏幕只有一半的屏幕 – njzk2
您可以發佈onCreate()中的代碼嗎? –
由於GUI尚不存在,因此無法在onCreate()中使用getWidth()。嘗試在onStart() – Pikaling