Это нормально работает на эмуляторе, но не на устройствах, потому что я жестко закодировал высоту до 365. Кто-нибудь может мне помочь в этом отношении?
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TabHost android:id="@+id/tab_host" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TabWidget android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@android:id/tabs" android:layout_gravity="bottom"/> <FrameLayout android:id="@android:id/tabcontent" android:layout_width="fill_parent" android:layout_height="fill_parent"> <RelativeLayout android:id="@+id/first_tab" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="365px"> <WebView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/webview" android:layout_width="fill_parent" android:layout_height="wrap_content"/> <ImageView android:id="@+id/widget31" android:layout_width="fill_parent" android:layout_height="49px" android:layout_x="0px" android:layout_y="0px" android:background="#39000000" android:layout_alignParentBottom="true"> </ImageView> <ImageButton android:id="@+id/btnFB" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/fb" android:background="#00000000" android:layout_alignRight="@+id/widget31" android:layout_alignParentBottom="true"> </ImageButton> <TextView android:id="@+id/myTextView1" android:layout_height="wrap_content" android:layout_width="wrap_content" android:text="Share" android:textColor="#111111" android:textSize="14pt" android:paddingBottom="5px" android:layout_alignLeft="@+id/widget31" android:layout_alignParentBottom="true"/> <ImageButton android:id="@+id/btnTwitter" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/twitter" android:visibility="invisible" android:background="#00000000" android:layout_alignRight="@+id/widget31" android:layout_alignParentBottom="true"> </ImageButton> <!-- Replace TextView with your layout content for this tab --> </RelativeLayout> <LinearLayout android:id="@+id/second_tab" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <ScrollView android:id="@+id/ScrollView01" android:layout_height="365px" android:layout_width="fill_parent"> <WebView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/webviewForRSS" android:layout_width="fill_parent" android:layout_height="365px" android:background="#98012E"/> </ScrollView> <!-- Replace TextView with your layout content for this tab --> </LinearLayout> <LinearLayout android:id="@+id/edit_item_text_tab" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"/> </FrameLayout> </TabHost> </RelativeLayout>
Спасибо.
Вы можете динамически изменять высоту макета разными способами -----
Во-первых,
getLayoutParams().height= x; requestLayout(); or invalidate();
Во-вторых,
first_tab.setHeight(int pixels);
Попробуйте использовать любой изпуть .......
Вы не должны использовать px, вместо этого используйте dp.
px
dp
android:layout_height="365dp"
Прочитайте здесь , чтобы лучше узнать плотность, независимую от плотности пикселей (dp).
Настоятельно рекомендуется использовать единицы измерения dp для определения пользовательского интерфейса вашего приложения, чтобы обеспечить правильное отображение пользовательского интерфейса на разных экранах.