0

我在具有 TableLayout 标头、LinearLayout 可滚动正文和 LinearLayout 页脚的 RelativeLayout 中遇到 Android 4.3(编辑:所有 APIS)问题。正文包含两个 webviews,并且活动与 API 级别 <18 完美配合。当我在 API 级别 18 中运行我的应用程序(由 AVD 模拟或安装在我的 Galaxy Nexus 中)时,当 webViews 加载内容时,TableLayout 中 textViews 的文本消失,只保留第一个字符(或前两个字符如果文本是两行)。似乎 webView 改变了文本的方向..

我尝试android:orientation="horizontal"在 TableLayout 和 TableRow 中插入,但没有结果。只有当我删除我的 webViews 时,才会显示文本

它是 Android 4.3 的错误,还是我必须在我的代码中插入一些东西?我附上了我的 xml 文件和屏幕截图的链接。

---->图片

XML 代码:

<?xml version="1.0" encoding="utf-8"?>    
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="match_parent" >

<!-- parte superiore (tabs) -->

<TableLayout
    android:id="@+id/header"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_marginBottom="2dp">

    <TableRow
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

        <TextView
            android:id="@+id/dati_imp"
            android:layout_width="0px"
            android:layout_height="fill_parent"
            android:layout_gravity="center_vertical"
            android:layout_margin="0dp"
            android:layout_weight="0.335"
            android:background="#669900"
            android:gravity="center"
            android:text="@string/dati_imp"
            android:textColor="@color/White" />

        <View
            android:layout_width="1dp"
            android:layout_height="fill_parent"
            android:background="@android:color/darker_gray" />

        <TextView
            android:id="@+id/inverter"
            android:layout_width="0px"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical"
            android:layout_weight="0.335"
            android:gravity="center"
            android:text="@string/inverter" />

        <View
            android:layout_width="1dp"
            android:layout_height="fill_parent"
            android:background="@android:color/darker_gray" />

        <TextView
            android:id="@+id/cfr_inv"
            android:layout_width="0px"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical"
            android:layout_weight="0.33"
            android:gravity="center"
            android:text="@string/cfr_inv" />
    </TableRow>

    <View
        android:layout_width="fill_parent"
        android:layout_height="1dp"
        android:background="@android:color/darker_gray" />

    <TableRow
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

        <TextView
            android:id="@+id/cont_fisc"
            android:layout_width="0px"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical"
            android:layout_weight="0.5"
            android:gravity="center"
            android:text="@string/cont_fisc" />

        <View
            android:layout_width="1dp"
            android:layout_height="fill_parent"
            android:background="@android:color/darker_gray" />

        <TextView
            android:id="@+id/contatti"
            android:layout_width="0px"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical"
            android:layout_weight="0.5"
            android:gravity="center"
            android:text="@string/contatti" />
    </TableRow>

    <View
        android:layout_width="fill_parent"
        android:layout_height="1dp"
        android:background="@android:color/darker_gray" />
</TableLayout>

<!-- parte inferiore (button) -->

<LinearLayout
    android:id="@+id/footer"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:paddingTop="2dp" >

    <Button
        android:id="@+id/refresh_button"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:layout_marginBottom="5dip"
        android:text="@string/refresh_button_label" />
</LinearLayout>

<!-- parte centrale -->

<ScrollView
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_above="@id/footer"
    android:layout_below="@id/header" >

    <LinearLayout
        android:id="@+id/body"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical" >

        <LinearLayout
            android:id="@+id/cornice1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_margin="1dp"
            android:background="@drawable/cornice"
            android:orientation="vertical" >

            <TextView
                android:id="@+id/dati_gen"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_marginLeft="3dp"
                android:layout_marginRight="3dp"
                android:gravity="center"
                android:padding="6dp"
                android:text="@string/dati_imp"
                android:textColor="@android:color/white"
                android:textSize="16sp"
                android:textStyle="bold"
                android:typeface="sans" />

            <View
                android:layout_width="fill_parent"
                android:layout_height="2dp"
                android:background="@color/Gray" />

            <TextView
                android:id="@+id/kwn"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="2dp"
                android:padding="4dp" />

            <TextView
                android:id="@+id/dataAll"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="2dp"
                android:padding="4dp" />

            <TextView
                android:id="@+id/tariffa"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="2dp"
                android:padding="4dp" />

            <TextView
                android:id="@+id/co2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginBottom="8dp"
                android:layout_marginLeft="2dp"
                android:padding="4dp" />
        </LinearLayout>

        <LinearLayout
            android:id="@+id/cornice2"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_margin="1dp"
            android:background="@drawable/cornice"
            android:orientation="vertical" >

            <TextView
                android:id="@+id/conto_en"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:padding="6dp"
                android:text="@string/conto_en"
                android:textColor="@android:color/white"
                android:textSize="16sp"
                android:textStyle="bold"
                android:typeface="sans" />

            <View
                android:layout_width="fill_parent"
                android:layout_height="2dp"
                android:background="@color/Gray" />

            <TextView
                android:id="@+id/oggiEn"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="2dp"
                android:padding="4dp" />

            <TextView
                android:id="@+id/meseEn"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="2dp"
                android:padding="4dp" />

            <TextView
                android:id="@+id/annoEn"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="2dp"
                android:padding="4dp" />

            <TextView
                android:id="@+id/totEn"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginBottom="4dp"
                android:layout_marginLeft="2dp"
                android:padding="4dp" />

            <TextView
                android:id="@+id/text"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginBottom="2dp"
                android:padding="8dp"
                android:text="@string/conto_en_txt"
                android:textStyle="italic" />
        </LinearLayout>

        <LinearLayout
            android:id="@+id/cornice3"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_margin="1dp"
            android:background="@drawable/cornice"
            android:orientation="vertical"
            android:paddingBottom="20dp" >

            <TextView
                android:id="@+id/foto"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:padding="6dp"
                android:text="@string/foto"
                android:textColor="@android:color/white"
                android:textSize="16sp"
                android:textStyle="bold"
                android:typeface="sans" />

            <View
                android:layout_width="fill_parent"
                android:layout_height="2dp"
                android:background="@color/Gray" />

            <WebView
                android:id="@+id/webview_foto"
                android:layout_width="wrap_content"
                android:layout_height="fill_parent"
                android:layout_gravity="center" />
        </LinearLayout>

        <LinearLayout
            android:id="@+id/cornice4"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_margin="1dp"
            android:background="@drawable/cornice"
            android:orientation="vertical" >

            <TextView
                android:id="@+id/pot_imp"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:padding="6dp"
                android:text="@string/pot_imp"
                android:textColor="@android:color/white"
                android:textSize="16sp"
                android:textStyle="bold"
                android:typeface="sans" />

            <View
                android:layout_width="fill_parent"
                android:layout_height="2dp"
                android:background="@color/Gray" />

            <RelativeLayout
                android:layout_width="fill_parent"
                android:layout_height="70dp" >

                <ProgressBar
                    android:id="@+id/potPerc"
                    style="?android:attr/progressBarStyleHorizontal"
                    android:layout_width="250dp"
                    android:layout_height="30dp"
                    android:layout_centerInParent="true"
                    android:max="100"
                    android:progressDrawable="@drawable/progressbarpotenza" />

                <TextView
                    android:id="@+id/potTxt"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignBaseline="@id/potPerc"
                    android:layout_centerInParent="true"
                    android:textColor="@android:color/black" />
            </RelativeLayout>
        </LinearLayout>

        <LinearLayout
            android:id="@+id/cornice5"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_margin="1dp"
            android:background="@drawable/cornice"
            android:orientation="vertical" >

            <TextView
                android:id="@+id/stato_imp"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:padding="6dp"
                android:text="@string/stato_imp"
                android:textColor="@android:color/white"
                android:textSize="16sp"
                android:textStyle="bold"
                android:typeface="sans" />

            <View
                android:layout_width="fill_parent"
                android:layout_height="2dp"
                android:background="@color/Gray" />

            <ImageView
                android:id="@+id/fotostato"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:padding="6dp" />

            <TextView
                android:id="@+id/nonatt"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginBottom="8dp"
                android:layout_marginLeft="2dp"
                android:padding="4dp" />
        </LinearLayout>

        <LinearLayout
            android:id="@+id/cornice6"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_margin="1dp"
            android:background="@drawable/cornice"
            android:orientation="vertical" >

            <TextView
                android:id="@+id/pot_tot"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:padding="6dp"
                android:text="@string/pot_tot"
                android:textColor="@android:color/white"
                android:textSize="16sp"
                android:textStyle="bold"
                android:typeface="sans" />

            <View
                android:layout_width="fill_parent"
                android:layout_height="2dp"
                android:background="@color/Gray" />

            <TextView
                android:id="@+id/potenza"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="2dp"
                android:padding="4dp" />

            <TextView
                android:id="@+id/maxgiorno"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="2dp"
                android:padding="4dp" />

            <TextView
                android:id="@+id/maxmese"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="2dp"
                android:padding="4dp" />

            <TextView
                android:id="@+id/maxanno"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginBottom="8dp"
                android:layout_marginLeft="2dp"
                android:padding="4dp" />
        </LinearLayout>

        <LinearLayout
            android:id="@+id/cornice7"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_margin="1dp"
            android:background="@drawable/cornice"
            android:orientation="vertical" >

            <TextView
                android:id="@+id/prod_tot"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:padding="6dp"
                android:text="@string/prod_tot"
                android:textColor="@android:color/white"
                android:textSize="16sp"
                android:textStyle="bold"
                android:typeface="sans" />

            <View
                android:layout_width="fill_parent"
                android:layout_height="2dp"
                android:background="@color/Gray" />

            <TextView
                android:id="@+id/oggi"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="2dp"
                android:padding="4dp" />

            <TextView
                android:id="@+id/mese"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="2dp"
                android:padding="4dp" />

            <TextView
                android:id="@+id/anno"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="2dp"
                android:padding="4dp" />

            <TextView
                android:id="@+id/tot"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginBottom="8dp"
                android:layout_marginLeft="2dp"
                android:padding="4dp" />

            <TextView
                android:id="@+id/prod_tot_k"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:padding="6dp"
                android:text="@string/prod_tot_k"
                android:textSize="16sp"
                android:textStyle="bold"
                android:typeface="sans" />

            <TextView
                android:id="@+id/oggiKWp"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="2dp"
                android:padding="4dp" />

            <TextView
                android:id="@+id/meseKWp"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="2dp"
                android:padding="4dp" />

            <TextView
                android:id="@+id/annoKWp"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="2dp"
                android:padding="4dp" />

            <TextView
                android:id="@+id/totKWp"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginBottom="8dp"
                android:layout_marginLeft="2dp"
                android:padding="4dp" />
        </LinearLayout>

        <LinearLayout
            android:id="@+id/cornice8"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_margin="1dp"
            android:background="@drawable/cornice"
            android:orientation="vertical"
            android:paddingBottom="20dp" >

            <TextView
                android:id="@+id/meteo"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:padding="6dp"
                android:text="@string/meteo"
                android:textColor="@android:color/white"
                android:textSize="16sp"
                android:textStyle="bold"
                android:typeface="sans" />

            <View
                android:layout_width="fill_parent"
                android:layout_height="2dp"
                android:background="@color/Gray" />

            <RelativeLayout
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:padding="6dp" >

                <WebView
                    android:id="@+id/webview_meteo"
                    android:layout_width="wrap_content"
                    android:layout_height="fill_parent"
                    android:layout_centerInParent="true" />
            </RelativeLayout>

            <TextView
                android:id="@+id/info"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:paddingLeft="6dp"
                android:paddingTop="6dp"
                android:text="@string/info"
                android:textStyle="italic" />
        </LinearLayout>
    </LinearLayout>
</ScrollView>
</RelativeLayout>

编辑:

我验证了 textView 的方向发生了变化(插入android:layout_height="300dp"TableLayout 的 textViews 以查看整个文本)。现在,如何解决它?

编辑2:

在另一个布局包含 ExpandableListview 的活动中,我遇到了完全相同的问题,并且由代码定位到右侧的组指示器转到每个组项的左侧。我再说一遍,这仅在 API 18 中...

EDIT3:已解决

我终于得到了解决方案并附上了新的答案!(标题已更改)

4

1 回答 1

1

最后,在疯狂地了解问题所在之后,我得到了解决方案!我不知道为什么,但我发现我在所有显示 TableLayout 和 0px 宽度和 weight childs 属性的活动中都有同样的问题。

在 UI 中更改某些内容,例如加载 WebView(s),或(在另一个活动中),在微调器选择后恢复活动,导致了问题。在第二种情况下,我在 API < 18(虚拟和真实)设备中也遇到了麻烦,然后我意识到这不仅仅是一个 API 18 错误......

我解决了我的问题,只在具有指定 TableLayout 的每个 XML 文件中添加了一个 TableLayout 属性:

android:stretchColumns="*"

在我所有的 TableLayouts 中添加它之后,我解决了它!

希望这个帮助=)..

于 2013-10-24T13:46:27.193 回答