如何在屏幕的某个不同部分使多个textview可垂直滚动?
<ImageView android:id="@+id/imageView" android:layout_width="200dp" android:layout_height="200dp" android:src="@drawable/girl1" /> <TextView android:layout_width="200dp" android:layout_height="200dp" android:id="@+id/textview" android:maxLines="8" android:scrollbars="vertical" android:layout_alignTop="@+id/imageView" android:layout_toEndOf="@+id/imageView" android:layout_toRightOf="@+id/imageView"></TextView> </RelativeLayout> TextView intro; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_meet_our_team); TextView txtview=(TextView)findViewById(R.id.textview); String text="I like programming in Android. This tip shows you how to make a TextView scrollable in Android."; txtview.setText(text); intro.setMovementMethod(new ScrollingMovementMethod()); } }
我收到以下错误:
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TextView.setMovementMethod(android.text.method.MovementMethod)' on a null object reference
at com.example.cepl_pc.trial.MeetOurTeam.onCreate
答案 0 :(得分:1)
您的问题出在intro.setMovementMethod(new ScrollingMovementMethod());
您尚未为TextView简介分配任何ID,请将其替换为txtView。
此外,您有android:maxLines = "8"
并且您的文本字符串不够长以获得滚动视图,使用下面的代码您将看到滚动效果。
<ImageView
android:id="@+id/imageView"
android:layout_width="200dp"
android:layout_height="200dp"
android:src="@drawable/girl1" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/textview"
android:maxLines = "3"
android:scrollbars="vertical"
android:layout_alignTop="@+id/imageView"
android:layout_toEndOf="@+id/imageView"
android:layout_toRightOf="@+id/imageView"></TextView>
在java中,
TextView txtview=(TextView)findViewById(R.id.textview);
String text="I like programming in Android. This tip shows you how to make a TextView scrollable in Android.";
txtview.setText(text);
txtview.setMovementMethod(new ScrollingMovementMethod());
答案 1 :(得分:0)
你甚至可以
<ScrollView
android:layout_width="200dp"
android:layout_height="200dp">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="text"/>
</ScrollView>
答案 2 :(得分:0)
如果你希望你的所有布局都滚动。将ScrollView作为你的根布局并将fillview端口设置为true。就像这样:
<Scroll View
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:fillViewport="true"/>
.
.
//rest of your xml code.
.
.
<ScrollView/>
如果有效,请在评论部分告诉我。
答案 3 :(得分:0)
解决这个问题的最佳方法是将其放在。{1}}中的.xml文件中,如下所示。
ScrollView
答案 4 :(得分:0)
声明textView
textView1 = (TextView) findViewById(R.id.textView1);
在方法中添加以下代码
textView1.setMovementMethod(new ScrollingMovementMethod());