2013-12-22 45 views
0

我正在开发一个秒表应用程序。我想滚动一个TextView

我要滚动只一个TextView。

这里的XML文件。

activity_main.xml中

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:background="#001729" 
android:orientation="vertical" > 



<Button 
    android:id="@+id/btn_rec" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_alignParentLeft="true" 
    android:enabled="false" 
    android:onClick="myOnClick" 
    android:text="Record" /> 

<Button 
    android:id="@+id/btn_start" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_above="@+id/btn_rec" 
    android:layout_alignParentLeft="true" 
    android:onClick="myOnClick" 
    android:text="Start" /> 


**<TextView 
    android:id="@+id/record" 
    android:layout_width="fill_parent" 
    android:layout_height="500dp" 
    android:layout_below="@+id/time_out" 
    android:layout_above="@+id/btn_start" 
    android:layout_alignParentLeft="true" 
    android:padding="10dp" 
    android:textColor="#FFFFFF" 
    android:textSize="20sp" />** 


<TextView 
    android:id="@+id/time_out" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentLeft="true" 
    android:layout_below="@+id/relativeLayout1" 
    android:layout_marginTop="37dp" 
    android:gravity="center" 
    android:text="00:00:00" 
    android:textColor="#FFFFFF" 
    android:textSize="60sp" /> 

我想只滚动TextView的大胆。

我不知道如何在这种情况下,使用滚动型。

我该怎么办?谢谢:)

+0

你什么意思,你要滚动一个TextView?你想让textview里面的文本在textview高度固定的位置滚动吗?请解释更多 –

+0

给我们一些关于答案的反馈。 –

回答

1

您可以滚动使用TextView的滚动字幕属性(内部的TextView即文本)。

<TextView 
    android:id="@+id/textView" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:scrollbars="vertical" 
    android:marqueeRepeatLimit="marquee_forever" 
    android:text="@string/hello_world" /> 

和编程

TextView textView = (TextView) findViewById(R.id.textView); 
    textView.setMovementMethod(new ScrollingMovementMethod()); 
+0

它的工作原理!谢谢:) – BaZzi

+0

很酷...你可以接受答案,如果它帮助你... –

0

设置的RelativeLayout的母公司为滚动型为滚动型只能有1个直接孩子! 或复制粘贴这个 -

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:background="#001729" 
> 

<ScrollView 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:background="#001729" 
> 

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




<Button 
android:id="@+id/btn_rec" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:layout_alignParentBottom="true" 
android:layout_alignParentLeft="true" 
android:enabled="false" 
android:onClick="myOnClick" 
android:text="Record" /> 

<Button 
android:id="@+id/btn_start" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:layout_above="@+id/btn_rec" 
android:layout_alignParentLeft="true" 
android:onClick="myOnClick" 
android:text="Start" /> 


<TextView 
android:id="@+id/record" 
android:layout_width="fill_parent" 
android:layout_height="500dp" 
android:layout_below="@+id/time_out" 
android:layout_above="@+id/btn_start" 
android:layout_alignParentLeft="true" 
android:padding="10dp" 
android:textColor="#FFFFFF" 
android:textSize="20sp" />** 


<TextView 
android:id="@+id/time_out" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:layout_alignParentLeft="true" 
android:layout_below="@+id/relativeLayout1" 
android:layout_marginTop="37dp" 
android:gravity="center" 
android:text="00:00:00" 
android:textColor="#FFFFFF" 
android:textSize="60sp" /> 

</LinearLayout> 
<ScrollView> 
</RelativeLayout> 

这将滚动全部置于其内的RelativeLayout

+0

这根本不起作用。 –

+0

好的我已编辑 –

+0

它仍然无法正常工作。 –

0

TextView的(一个或多个)更换您的TextView与此

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

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

      <TextView 
       android:id="@+id/textView1" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 

       android:text="@string/hello_world" /> 
     </LinearLayout> 
    </ScrollView> 
0

你可以用这个替换您的TextView:

<ScrollView 
    android:layout_width="fill_parent" 
    android:layout_height="500dp" 
    android:padding="10dp" 
    android:layout_above="@+id/btn_start" 
    android:layout_alignParentLeft="true" 
    android:layout_below="@+id/time_out" > 

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

     <TextView 
      android:id="@+id/record" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:textColor="#FFFFFF" 
      android:textSize="20sp" /> 
    </RelativeLayout> 
</ScrollView> 

我所做的只是将它包裹在一个RelativeLay出来,然后将其包装在ScrollView中。我还将TextView的布局属性放入ScrollView中,因为现在ScrollView是父级。我选择了一个RelativeLayout,因为另一个答案选择了一个LinearLayout。这并不重要。

注意你可能要玩的几个属性。这个想法在那里。它应该解决。

0

在你的XML(内部的TextView),你可能要设置的属性:

android:minLines="2" 
android:maxLines="5" 

在您定义的最小和最大行数以这种方式你的textview,只有它会滚动。

在这里阅读过:

minLines

maxLines