我正在尝试从右到左使用horizontalscrollview。 我的targetSDK是17。 我在清单里面
<application android:supportsRtl="true">
我的布局是
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@id/lay_main_firma_outer"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:weightSum="1.0"
android:background="@color/bg_firma" >
<HorizontalScrollView
android:id="@id/lay_main_firma_hscroll"
android:fillViewport="true"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1.0" >
<LinearLayout
android:id="@id/lay_main_firma_objekti"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:orientation="horizontal"/>
</HorizontalScrollView>
我在运行时将对象添加到linearlayout。在运行时,我还使用
设置RTL private void rightToLeft_post17(HorizontalScrollView hscv){
hscv.setLayoutDirection(View.LAYOUT_DIRECTION_RTL);
LinearLayout lay=(LinearLayout) hscv.findViewById(R.id.lay_main_firma_objekti);
if(lay!=null){
lay.setLayoutDirection(View.LAYOUT_DIRECTION_RTL);
}
}
但它不起作用。 知道什么可能是错的吗? 感谢
答案 0 :(得分:0)
尝试使布局无效:
if(lay!=null){
lay.setLayoutDirection(View.LAYOUT_DIRECTION_RTL);
lay.invalidate();
}
答案 1 :(得分:0)
首先,在将项目加载到horizontalscrollview中之前,先隐藏horizontalscrollview的父布局。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@id/lay_main_firma_outer"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:weightSum="1.0"
android:setVisibility="gone"
android:background="@color/bg_firma" >
上传完成后,以编程方式使您的线性布局可见,如下所示:
findViewById(R.id.lay_main_firma_outer).setVisibility(View.VISIBLE);