1

我的 TextView 有问题。

当我的文本视图中的文本太长时,我无法再查看它,因为我无法在手机上滚动它。

我的代码如下:

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@color/lightgray"
        tools:context=".BucketItemDescActivity" >

        <TextView
            android:id="@+id/textView3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_below="@+id/imageView1"
            android:layout_marginLeft="25dp"
            android:layout_marginRight="25dp"
            android:layout_marginTop="19dp"
            android:text="The Godfather is a 1972 American epic crime film directed by Francis Ford Coppola and produced by Albert S. Ruddy from a screenplay by Mario Puzo and Coppola. Based on Puzo&apos;s 1969 novel of the same name, the film stars Marlon Brando and Al Pacino as the leaders of a powerful New York crime family. The story, spanning the years 1945 to 1955, centers on the ascension of Michael Corleone (Pacino) from reluctant family outsider to ruthless Mafia boss while also chronicling the Corleone family under the patriarch Vito Corleone (Brando)
The Godfather is a 1972 American epic crime film directed by Francis Ford Coppola and produced by Albert S. Ruddy from a screenplay by Mario Puzo and Coppola. Based on Puzo&apos;s 1969 novel of the same name, the film stars Marlon Brando and Al Pacino as the leaders of a powerful New York crime family. The story, spanning the years 1945 to 1955, centers on the ascension of Michael Corleone (Pacino) from reluctant family outsider to ruthless Mafia boss while also chronicling the Corleone family under the patriarch Vito Corleone (Brando)."
            android:textSize="12sp" />

        <LinearLayout
            android:id="@+id/frameLayout1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentRight="true"
            android:layout_alignParentTop="true"
            android:background="#336699" >

            <TextView
                android:id="@+id/textView1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:layout_marginLeft="25dp"
                android:textSize="15sp" 
                android:textColor="#FFFFFF"
                android:text="The Godfather (1972)" />

        </LinearLayout>

        <ImageView
            android:id="@+id/imageView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/frameLayout1"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="18dp"
            android:src="@drawable/movie1" />

    </RelativeLayout>

我该如何解决这个问题?

谢谢你

4

5 回答 5

2

将所有视图放在ScrollView中。

例如:

<RelativeLayout
       xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@color/lightgray"
        tools:context=".BucketItemDescActivity">

  <ScrollView>
     <TextView/>
     <TextView/>
     ..........
     ..........
     ..........

  </ScrollView>
</RelativeLayout>
于 2012-12-31T09:47:55.987 回答
2

请使用下面的 XML 代码而不是您的代码,它将解决您的问题。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@color/lightgray" >

    <ScrollView
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" >

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

            <TextView
                android:id="@+id/textView3"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_below="@+id/imageView1"
                android:layout_marginLeft="25dp"
                android:layout_marginRight="25dp"
                android:layout_marginTop="19dp"
                android:text="The Godfather is a 1972 American epic crime film directed by Francis Ford Coppola and produced by Albert S. Ruddy from a screenplay by Mario Puzo and Coppola. Based on Puzo&apos;s 1969 novel of the same name, the film stars Marlon Brando and Al Pacino as the leaders of a powerful New York crime family. The story, spanning the years 1945 to 1955, centers on the ascension of Michael Corleone (Pacino) from reluctant family outsider to ruthless Mafia boss while also chronicling the Corleone family under the patriarch Vito Corleone (Brando)
The Godfather is a 1972 American epic crime film directed by Francis Ford Coppola and produced by Albert S. Ruddy from a screenplay by Mario Puzo and Coppola. Based on Puzo&apos;s 1969 novel of the same name, the film stars Marlon Brando and Al Pacino as the leaders of a powerful New York crime family. The story, spanning the years 1945 to 1955, centers on the ascension of Michael Corleone (Pacino) from reluctant family outsider to ruthless Mafia boss while also chronicling the Corleone family under the patriarch Vito Corleone (Brando)."
                android:textSize="12sp" />

            <LinearLayout
                android:id="@+id/frameLayout1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_alignParentRight="true"
                android:layout_alignParentTop="true"
                android:background="#336699" >

                <TextView
                    android:id="@+id/textView1"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_margin="10dp"
                    android:layout_marginLeft="25dp"
                    android:text="The Godfather (1972)"
                    android:textColor="#FFFFFF"
                    android:textSize="15sp" />
            </LinearLayout>

            <ImageView
                android:id="@+id/imageView1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@+id/frameLayout1"
                android:layout_centerHorizontal="true"
                android:layout_marginTop="18dp"
                android:src="@drawable/movie1" />
        </RelativeLayout>
    </ScrollView>

</RelativeLayout>
于 2012-12-31T09:53:20.270 回答
1

将 ScrollView 添加到 yourTextView,

<ScrollView android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_below="@+id/imageView1"
            android:layout_marginLeft="25dp"
            android:layout_marginRight="25dp"
            android:layout_marginTop="19dp"
            android:scrollbars="none">
        <TextView
            android:id="@+id/textView3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="The Godfather is a 1972 American epic crime film directed by Francis Ford Coppola and produced by Albert S. Ruddy from a screenplay by Mario Puzo and Coppola. Based on Puzo&apos;s 1969 novel of the same name, the film stars Marlon Brando and Al Pacino as the leaders of a powerful New York crime family. The story, spanning the years 1945 to 1955, centers on the ascension of Michael Corleone (Pacino) from reluctant family outsider to ruthless Mafia boss while also chronicling the Corleone family under the patriarch Vito Corleone (Brando)
The Godfather is a 1972 American epic crime film directed by Francis Ford Coppola and produced by Albert S. Ruddy from a screenplay by Mario Puzo and Coppola. Based on Puzo&apos;s 1969 novel of the same name, the film stars Marlon Brando and Al Pacino as the leaders of a powerful New York crime family. The story, spanning the years 1945 to 1955, centers on the ascension of Michael Corleone (Pacino) from reluctant family outsider to ruthless Mafia boss while also chronicling the Corleone family under the patriarch Vito Corleone (Brando)."
            android:textSize="12sp" />

</ScrollView>

编辑

要在 scrollView 中添加 ImageView,请从其所在位置删除 ImageView 并像这样添加它,

<ScrollView  android:layout_width="wrap_content"
    android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
            android:layout_below="@+id/imageView1"
            android:layout_marginLeft="25dp"
            android:layout_marginRight="25dp"
            android:layout_marginTop="19dp"
            android:scrollbars="none">

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

            <ImageView
            android:id="@+id/imageView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal"
            android:layout_marginTop="18dp"
            android:src="@drawable/ic_launcher" />

        <TextView
            android:id="@+id/textView3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="The Godfather is a 1972 American epic crime film directed by Francis Ford Coppola and produced by Albert S. Ruddy from a screenplay by Mario Puzo and Coppola. Based on Puzo&apos;s 1969 novel of the same name, the film stars Marlon Brando and Al Pacino as the leaders of a powerful New York crime family. The story, spanning the years 1945 to 1955, centers on the ascension of Michael Corleone (Pacino) from reluctant family outsider to ruthless Mafia boss while also chronicling the Corleone family under the patriarch Vito Corleone (Brando)
The Godfather is a 1972 American epic crime film directed by Francis Ford Coppola and produced by Albert S. Ruddy from a screenplay by Mario Puzo and Coppola. Based on Puzo&apos;s 1969 novel of the same name, the film stars Marlon Brando and Al Pacino as the leaders of a powerful New York crime family. The story, spanning the years 1945 to 1955, centers on the ascension of Michael Corleone (Pacino) from reluctant family outsider to ruthless Mafia boss while also chronicling the Corleone family under the patriarch Vito Corleone (Brando)."
            android:textSize="12sp" />
      </LinearLayout>  
</ScrollView>
于 2012-12-31T09:48:59.630 回答
1
<ScrollView ... >
  <TextView fill_parent etc./>





</ScrollView>
于 2012-12-31T09:49:14.170 回答
1

试试这个 :

将此设置为您的TextView

android:maxLines = "AN_INTEGER"    
android:scrollbars = "vertical"

然后从你的Activity

yourTextView.setMovementMethod(new ScrollingMovementMethod());

谢谢。

于 2012-12-31T09:49:55.997 回答