xml linearlayout水平,文本未显示

时间:2013-09-25 16:39:48

标签: android android-linearlayout android-xml

我在Android应用中有一个活动的视图:

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

    <LinearLayout 
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical" >

        <FrameLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginLeft="6dp"
                android:layout_marginRight="6dp"
                android:layout_marginTop="4dp"
                android:layout_marginBottom="4dp"
                android:orientation="vertical"
                android:background="@drawable/bg_card">

                <!-- Card Contents go here -->
                <TextView
                    android:id="@+id/breweryTitle"
                    android:layout_width="fill_parent"
                    android:layout_height="wrap_content"
                    android:ems="10"
                    android:textSize="20sp"
                    android:textStyle = "bold"
                    android:padding="5dip"
                    >
                </TextView>

                <ImageView android:id="@+id/breweryImage"
                    android:layout_height="wrap_content"
                    android:layout_width="fill_parent"
                    android:layout_margin="10dip"/>


            </LinearLayout >

        </FrameLayout>





    <TableLayout  

    android:id="@+id/tableLayout2"  
    android:layout_width="match_parent"  
    android:layout_height="match_parent"  
    android:layout_gravity="center_horizontal"
    android:shrinkColumns="*"  
    android:stretchColumns="*">

        <FrameLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginLeft="6dp"
                android:layout_marginRight="6dp"
                android:layout_marginTop="4dp"
                android:layout_marginBottom="4dp"
                android:orientation="vertical"
                android:background="@drawable/bg_card">

                <!-- Card Contents go here -->

                <LinearLayout
                    android:orientation="horizontal"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content">

                <TextView
                    android:id="@+id/breweryEstablished"
                    android:layout_width="fill_parent"
                    android:layout_height="wrap_content"
                    android:ems="10"
                    android:text="Year Established: "
                    android:textSize="20sp"
                    android:textStyle = "bold"
                    android:padding="5dip"
                    >
                </TextView>

                <TextView
                    android:id="@+id/yearTitle"
                    android:layout_width="fill_parent"
                    android:layout_height="wrap_content"
                    android:ems="10"
                    android:text=""
                    android:textSize="20sp"
                    android:padding="5dip"
                    >
                </TextView>

                </LinearLayout>


            </LinearLayout >

        </FrameLayout>





    </TableLayout>

        <FrameLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginLeft="6dp"
                android:layout_marginRight="6dp"
                android:layout_marginTop="4dp"
                android:layout_marginBottom="4dp"
                android:orientation="vertical"
                android:background="@drawable/bg_card">

                <!-- Card Contents go here -->
                <TextView
                    android:id="@+id/beerDescriptionTitle2"
                    android:textStyle = "bold"
                    android:layout_width="fill_parent"
                    android:layout_height="wrap_content"
                    android:ems="10"
                    android:textSize="20sp"
                    android:text="Description:"
                    android:padding="5dip"
                    ></TextView>

                <TextView
                    android:id="@+id/breweryDescription"
                    android:layout_width="fill_parent"
                    android:layout_height="wrap_content"
                    android:ems="10"
                    android:textSize="15sp"
                    android:padding="5dip"

                    ></TextView>





            </LinearLayout >

        </FrameLayout>



        <FrameLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginLeft="6dp"
                android:layout_marginRight="6dp"
                android:layout_marginTop="4dp"
                android:layout_marginBottom="4dp"
                android:orientation="vertical"
                android:background="@drawable/bg_card">

                <!-- Card Contents go here -->
                <LinearLayout
                    android:layout_width="wrap_content"
                    android:layout_height="fill_parent"
                    android:layout_gravity="center"
                    android:orientation="horizontal"
                    >

                    <Button
                        android:layout_width="fill_parent"
                        android:layout_height="wrap_content"
                        android:text="All Beers"
                        android:id="@+id/button"
                        android:onClick="getAllBeers"/>

                    <Button
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Top Beers"
                        android:id="@+id/button2"
                        android:onClick="getTopBeers"
                        />

                    <Button
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Your Beers"
                        android:id="@+id/button2"
                        android:onClick="getYourTopBeers"
                        />

                </LinearLayout>

                <Button
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:text="Directions to Brewery"
                    android:id="@+id/button2"
                    android:onClick="getDirections"
                    />





            </LinearLayout >

        </FrameLayout>





    </LinearLayout>
</ScrollView>

它会产生这种效果:

enter image description here

我想要发生的是在“成立年份”旁边显示的年份,这就是为什么我的liniearLayout水平。当我将它垂直显示时,它会显示在它下面,但是当我切换到水平时,年份根本不显示,如上图所示。

1 个答案:

答案 0 :(得分:1)

这是因为您已将breweryEstablished textView width作为fill_parent,将wrap_content更改为textView

试试这个

<LinearLayout
                    android:orientation="horizontal"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content">

                <TextView
                    android:id="@+id/breweryEstablished"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:ems="10"
                    android:layout_weight=".5"
                    android:text="Year Established: "
                    android:textSize="20sp"
                    android:textStyle = "bold"
                    android:padding="5dip"
                    >
                </TextView>

                <TextView
                    android:id="@+id/yearTitle"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:ems="10"
                    android:text=""
                    android:layout_weight=".5"
                    android:textSize="20sp"
                    android:padding="5dip"
                    >
                </TextView>

这应该有效