如何在LinearLayout中创建文本中心顶部和屏幕的其他文本中心?

时间:2015-10-26 16:43:07

标签: android android-layout android-linearlayout

我有两个textviews。我想创建一个textview顶部中心,可以用作应用程序的标题。第二个textview是屏幕的中心,用于显示细节。我使用ScrollViewLinearLayout进行如下设置。但是,它不适用于第二个textview。你能看到我的布局文件并给我解决方法吗?我需要使用ScrollViewLinearLayout,因为我不想修改java代码。

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

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

        </LinearLayout>

        <TextView
            android:id="@+id/title_app"
            android:layout_width="fill_parent"
            android:layout_height="50dp"
            android:text="Main title-Center-top"
            android:layout_gravity="center"
            android:gravity="center_horizontal"
            android:textSize="20sp"
            android:layout_marginTop="20dp"
            />

        <TextView
                android:id="@+id/display"
                android:layout_width="fill_parent"
                android:layout_height="50dp"
                android:textSize="20sp"
                android:gravity="center"
                android:text="I want to center of screen"
            />

    </LinearLayout>    
</ScrollView>

3 个答案:

答案 0 :(得分:2)

你可以这样做

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

        <LinearLayout 
                  android:layout_width="fill_parent"
                  android:layout_height="fill_parent"
                  android:orientation="vertical">
         <LinearLayout
                  android:layout_width="match_parent"
                  android:layout_height="wrap_content"
                  android:layout_weight="0"
                  android:orientation="horizontal">
         <TextView
                 android:id="@+id/title_app"
                 android:layout_width="fill_parent"
                 android:layout_height="50dp"
                 android:text="Main title-Center-top"
                 android:layout_gravity="center"
                 android:gravity="center_horizontal"
                 android:textSize="20sp"
                 android:layout_marginTop="20dp"
            />
        </LinearLayout>


        <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:gravity="center"
                android:orientation="horizontal">
        <TextView
                android:id="@+id/display"
                android:layout_width="fill_parent"
                android:layout_height="50dp"
                android:textSize="20sp"
                android:gravity="center"
                android:text="I want to center of screen"
            />
     </LinearLayout>


    </LinearLayout>

</ScrollView>

答案 1 :(得分:1)

这是完整的xml代码,应该做你想要的,我只是测试它并且有效:

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:fillViewport="true">

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

    <TextView
        android:id="@+id/title_app"
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:text="Main title-Center-top"
        android:layout_gravity="center"
        android:gravity="center_horizontal"
        android:textSize="20sp"
        android:layout_marginTop="20dp"
        />

    <TextView
        android:id="@+id/display"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:textSize="20sp"
        android:gravity="center"
        android:text="I want to center of screen"
        />

</LinearLayout>

答案 2 :(得分:0)

您的代码对我来说没问题。

只需输入 android:fillViewport="true" on the ScrollView

即可

你的问题似乎是ScrollView没有伸展到它的全高。