我正在尝试构建一个琐事应用程序,但在使用文本视图时遇到了一些问题。问题是当我使用长问题文本时,视图停留在用户之前停止滚动的位置。我希望它在加载问题时显示顶部(自动滚动到顶部)。与最初的问题面临同样的问题,但通过改变解决了它
<LinearLayout android:gravity="center" android:layout_gravity="center_vertical" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content">
到
<LinearLayout android:gravity="center" android:layout_gravity="top|center" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content">
但是加载第二个问题(以及之后的问题)时,我无法获得相同的结果。现在用户应该手动滚动到顶部来阅读不理想的问题。通过更改xml中的一些值,textview是否可以在加载新问题时显示顶部?
完整的xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout android:orientation="vertical" android:id="@id/play_layout" android:background="@drawable/background" android:layout_width="fill_parent" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto">
<RelativeLayout android:id="@id/relativeLayout" android:background="@color/colorPrimary" android:layout_width="fill_parent" android:layout_height="?android:actionBarSize"
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto">
<ImageView android:id="@id/back" android:padding="5.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" app:srcCompat="@drawable/ic_back" />
<TextView android:textAppearance="@style/Base.TextAppearance.AppCompat.Medium" android:textStyle="bold" android:textColor="@color/white" android:id="@id/tvLevel" android:padding="5.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Select Level" android:layout_toRightOf="@id/back" android:layout_centerVertical="true" />
<TextView android:textAppearance="@style/Base.TextAppearance.AppCompat.Large" android:textStyle="bold" android:textColor="@color/white" android:id="@id/txt_question" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginRight="10.0dip" android:text="1/6" android:layout_toLeftOf="@id/setting" android:layout_centerVertical="true" />
<ImageView android:id="@id/setting" android:padding="5.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginRight="10.0dip" android:src="@drawable/settings" android:layout_centerVertical="true" android:layout_alignParentEnd="true" />
</RelativeLayout>
<RelativeLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/relativeLayout">
<RelativeLayout android:id="@id/wave_layout" android:background="@color/colorPrimary" android:layout_width="fill_parent" android:layout_height="wrap_content">
<View android:id="@id/divider" android:background="@drawable/drop_shadow" android:layout_width="fill_parent" android:layout_height="6.0dip" />
<LinearLayout android:orientation="horizontal" android:id="@id/score_layout" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_margin="10.0dip" android:weightSum="3.0" android:layout_below="@id/top_panel">
<LinearLayout android:layout_gravity="center_vertical" android:orientation="vertical" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_marginLeft="5.0dip" android:layout_weight="1.0">
<RelativeLayout android:layout_width="fill_parent" android:layout_height="wrap_content">
<ImageView android:id="@id/right" android:padding="3.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/check_mark" />
<TextView android:textAppearance="@style/Base.TextAppearance.AppCompat.Medium" android:textColor="@color/white" android:id="@id/txtTrueQuestion" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="5.0dip" android:text="0" android:layout_toRightOf="@id/right" android:layout_centerVertical="true" />
</RelativeLayout>
<RelativeLayout android:layout_width="fill_parent" android:layout_height="wrap_content">
<ImageView android:id="@id/wrong" android:padding="3.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/cancel_mark" />
<TextView android:textAppearance="@style/Base.TextAppearance.AppCompat.Medium" android:textColor="@color/white" android:gravity="center" android:id="@id/txtFalseQuestion" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="5.0dip" android:text="0" android:layout_toRightOf="@id/wrong" android:layout_centerVertical="true" />
</RelativeLayout>
</LinearLayout>
<RelativeLayout android:gravity="center" android:padding="5.0dip" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_weight="1.0">
<com.quiz.trivia.helper.CircularProgressIndicator android:id="@id/progressBarTwo" android:layout_width="@dimen/progress_h_w" android:layout_height="@dimen/progress_h_w" app:direction="counterclockwise" />
</RelativeLayout>
<LinearLayout android:layout_gravity="center" android:orientation="vertical" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_weight="1.0">
<LinearLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:weightSum="2.0">
<ImageView android:id="@id/imgCoin" android:padding="3.0dip" android:layout_width="0.0dip" android:layout_height="wrap_content" android:src="@drawable/coins" android:layout_weight="1.0" />
<TextView android:textAppearance="@style/Base.TextAppearance.AppCompat.Medium" android:textColor="@color/white" android:layout_gravity="center" android:id="@id/coin_count" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_marginLeft="5.0dip" android:text="00" android:layout_weight="1.0" />
</LinearLayout>
<LinearLayout android:gravity="center" android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:weightSum="2.0">
<ImageView android:id="@id/imgScore" android:padding="3.0dip" android:layout_width="0.0dip" android:layout_height="wrap_content" android:src="@drawable/score" android:layout_weight="1.0" />
<TextView android:textAppearance="@style/Base.TextAppearance.AppCompat.Medium" android:textColor="@color/white" android:layout_gravity="center" android:id="@id/txtScore" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_marginLeft="5.0dip" android:text="00" android:layout_weight="1.0" android:layout_toRightOf="@id/imgScore" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
</RelativeLayout>
<RelativeLayout android:id="@id/wave" android:background="@drawable/wave_background" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_below="@id/wave_layout" />
<RelativeLayout android:id="@id/main_layout" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_above="@id/bottom_panel" android:layout_below="@id/wave">
<ScrollView android:layout_width="fill_parent" android:layout_height="wrap_content">
<LinearLayout android:gravity="center" android:layout_gravity="center_vertical" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content">
<RelativeLayout android:id="@id/layout_answare" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textAppearance="@style/Base.TextAppearance.AppCompat.Medium" android:textColor="@color/colorPrimaryDark" android:id="@id/txtQuestion" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_margin="10.0dip" android:text="@string/app_name" android:layout_centerInParent="true" />
</RelativeLayout>
<LinearLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:weightSum="100.0">
<LinearLayout android:orientation="vertical" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_weight="85.0">
<RelativeLayout android:id="@id/a_layout" android:background="@drawable/answer_bg" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginLeft="16.0dip" android:layout_marginTop="8.0dip" android:layout_marginRight="16.0dip">
<LinearLayout android:orientation="horizontal" android:id="@id/main_option_a" android:background="@color/transparent" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_margin="5.0dip" android:weightSum="5.0" android:layout_centerVertical="true">
<TextView android:textAppearance="@style/Base.TextAppearance.AppCompat.Medium" android:textColor="@color/white" android:gravity="center|left" android:id="@id/btnOpt1" android:padding="5.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:text="Done" />
</LinearLayout>
</RelativeLayout>
<RelativeLayout android:id="@id/b_layout" android:background="@drawable/answer_bg" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginLeft="16.0dip" android:layout_marginTop="8.0dip" android:layout_marginRight="16.0dip">
<LinearLayout android:orientation="horizontal" android:id="@id/main_option_b" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_margin="5.0dip" android:layout_centerVertical="true">
<TextView android:textAppearance="@style/Base.TextAppearance.AppCompat.Medium" android:textColor="@color/white" android:gravity="center|left" android:id="@id/btnOpt2" android:padding="5.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:text="Done" />
</LinearLayout>
</RelativeLayout>
<RelativeLayout android:id="@id/c_layout" android:background="@drawable/answer_bg" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginLeft="16.0dip" android:layout_marginTop="8.0dip" android:layout_marginRight="16.0dip">
<LinearLayout android:orientation="horizontal" android:id="@id/main_option_c" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_margin="5.0dip" android:layout_centerVertical="true">
<TextView android:textAppearance="@style/Base.TextAppearance.AppCompat.Medium" android:textColor="@color/white" android:gravity="center" android:id="@id/btnOpt3" android:padding="5.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:text="Done" />
</LinearLayout>
</RelativeLayout>
<RelativeLayout android:id="@id/d_layout" android:background="@drawable/answer_bg" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginLeft="16.0dip" android:layout_marginTop="8.0dip" android:layout_marginRight="16.0dip" android:layout_marginBottom="8.0dip">
<LinearLayout android:orientation="horizontal" android:id="@id/main_option_d" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_margin="5.0dip" android:layout_centerVertical="true">
<TextView android:textAppearance="@style/Base.TextAppearance.AppCompat.Medium" android:textColor="@color/white" android:gravity="center" android:id="@id/btnOpt4" android:padding="5.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:text="Done" />
</LinearLayout>
</RelativeLayout>
</LinearLayout>
<LinearLayout android:orientation="vertical" android:layout_width="0.0dip" android:layout_height="fill_parent" android:weightSum="4.0" android:layout_weight="15.0">
<RelativeLayout android:id="@id/layout_A" android:layout_width="@dimen/circle_progress" android:layout_height="wrap_content" android:layout_marginLeft="5.0dip" android:layout_marginTop="8.0dip" android:layout_weight="1.0">
<TextView android:textAppearance="@style/Base.TextAppearance.AppCompat.Medium" android:textStyle="bold" android:textColor="@color/white" android:gravity="center" android:id="@id/option_a" android:background="@drawable/circle_bg" android:visibility="visible" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="A" android:layout_centerVertical="true" android:layout_alignParentEnd="true" />
<com.quiz.trivia.helper.CircularProgressIndicator2 android:id="@id/progress_A" android:background="@drawable/aud_progress_bg" android:visibility="gone" android:layout_width="@dimen/circle_progress" android:layout_height="@dimen/circle_progress" android:layout_centerVertical="true" android:layout_alignParentEnd="true" app:direction="clockwise" />
</RelativeLayout>
<RelativeLayout android:id="@id/layout_B" android:layout_width="@dimen/circle_progress" android:layout_height="wrap_content" android:layout_marginLeft="5.0dip" android:layout_marginTop="8.0dip" android:layout_weight="1.0">
<TextView android:textAppearance="@style/Base.TextAppearance.AppCompat.Medium" android:textStyle="bold" android:textColor="@color/white" android:gravity="center" android:id="@id/option_b" android:background="@drawable/circle_bg" android:visibility="visible" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="B" android:layout_centerVertical="true" android:layout_alignParentEnd="true" />
<com.quiz.trivia.helper.CircularProgressIndicator2 android:id="@id/progress_B" android:background="@drawable/aud_progress_bg" android:visibility="gone" android:layout_width="@dimen/circle_progress" android:layout_height="@dimen/circle_progress" android:layout_centerVertical="true" android:layout_alignParentEnd="true" app:direction="clockwise" />
</RelativeLayout>
<RelativeLayout android:id="@id/layout_C" android:layout_width="@dimen/circle_progress" android:layout_height="wrap_content" android:layout_marginLeft="5.0dip" android:layout_marginTop="8.0dip" android:layout_weight="1.0" android:layout_centerVertical="true" android:layout_alignParentEnd="true">
<TextView android:textAppearance="@style/Base.TextAppearance.AppCompat.Medium" android:textStyle="bold" android:textColor="@color/white" android:gravity="center" android:id="@id/option_c" android:background="@drawable/circle_bg" android:visibility="visible" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="C" android:layout_centerVertical="true" android:layout_alignParentEnd="true" />
<com.quiz.trivia.helper.CircularProgressIndicator2 android:id="@id/progress_C" android:background="@drawable/aud_progress_bg" android:visibility="gone" android:layout_width="@dimen/circle_progress" android:layout_height="@dimen/circle_progress" android:layout_centerVertical="true" android:layout_alignParentEnd="true" app:direction="clockwise" />
</RelativeLayout>
<RelativeLayout android:id="@id/layout_D" android:layout_width="@dimen/circle_progress" android:layout_height="wrap_content" android:layout_marginLeft="5.0dip" android:layout_marginTop="8.0dip" android:layout_marginBottom="8.0dip" android:layout_weight="1.0" android:layout_centerVertical="true" android:layout_alignParentEnd="true">
<TextView android:textAppearance="@style/Base.TextAppearance.AppCompat.Medium" android:textStyle="bold" android:textColor="@color/white" android:gravity="center" android:id="@id/option_d" android:background="@drawable/circle_bg" android:visibility="visible" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="D" android:layout_centerVertical="true" android:layout_alignParentEnd="true" />
<com.quiz.trivia.helper.CircularProgressIndicator2 android:id="@id/progress_D" android:background="@drawable/aud_progress_bg" android:visibility="gone" android:layout_width="@dimen/circle_progress" android:layout_height="@dimen/circle_progress" android:layout_centerVertical="true" android:layout_alignParentEnd="true" app:direction="clockwise" />
</RelativeLayout>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</ScrollView>
</RelativeLayout>
<RelativeLayout android:gravity="bottom" android:id="@id/bottom_panel" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true">
<LinearLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginBottom="5.0dip" android:weightSum="4.0">
<ImageView android:id="@id/fifty_fifty" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_marginRight="@dimen/left_rigth_margin_score_button" android:src="@drawable/fifty" android:layout_weight="1.0" android:layout_centerHorizontal="true" />
<ImageView android:id="@id/skip_quation" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_marginRight="@dimen/left_rigth_margin_score_button" android:src="@drawable/skip" android:layout_weight="1.0" android:layout_centerHorizontal="true" />
<ImageView android:id="@id/audience_poll" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_marginRight="@dimen/left_rigth_margin_score_button" android:src="@drawable/audiance" android:layout_weight="1.0" android:layout_centerHorizontal="true" />
<ImageView android:id="@id/reset_timer" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_marginRight="@dimen/left_rigth_margin_score_button" android:src="@drawable/timer" android:layout_weight="1.0" android:layout_centerHorizontal="true" />
</LinearLayout>
</RelativeLayout>
</RelativeLayout>
</RelativeLayout>
将 android:layout_gravity="center_vertical" 更改为 android:layout_gravity="top|center" 但它只解决了第一个问题。从此就卡在了滚动位置