Android中的ScrollView问题

发布于 2024-12-01 09:15:34 字数 5215 浏览 1 评论 0原文

我正在创建演示应用程序来回答问题。 MCQ 类型测试。我已经在滚动视图中设置了所有问题和答案布局。问答布局的大小根据问答的内容而变化。

当我滚动找到最后一个 ans 选项,然后加载下一个问题时,我的问题视图隐藏在顶部滚动下方。每次加载新问题和答案时,我想从顶部开始滚动。

这是我的 XML:

 <ScrollView android:scrollbars="vertical"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:id="@+id/scroll"
                android:layout_below="@+id/que_count"
                android:layout_marginBottom="20dip">
<RelativeLayout android:orientation="vertical"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_below="@+id/topbar"
                android:layout_centerHorizontal="true"
                android:id="@+id/road_sign_layout">
<RelativeLayout android:orientation="vertical"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="10dip"
                android:layout_marginLeft="10dip"
                android:layout_marginRight="10dip"
                android:layout_below="@+id/topbar"
                android:layout_centerHorizontal="true"
                android:background="@drawable/bubble1"
                android:id="@+id/que">
    <ImageView android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_marginLeft="3dip"
              android:id="@+id/road_signs_images"/>         
    <TextView android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:textColor="#000000"
              android:textStyle="bold"
              android:layout_marginLeft="5dip"
              android:textSize="15dip"
              android:id="@+id/question"/>
</RelativeLayout>

<RelativeLayout android:orientation="vertical"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@+id/que"
                android:layout_centerHorizontal="true"
                android:layout_marginTop="10dip"
                android:id="@+id/ansA"
                android:background="@drawable/ans_bg_new">            
    <TextView android:layout_width="250dip"
              android:layout_height="fill_parent"
              android:textColor="#000000"
              android:minHeight="35dip"
              android:gravity="center_vertical"
              android:layout_centerHorizontal="true"
              android:layout_below="@+id/question"
              android:id="@+id/ans1"/>
</RelativeLayout>
<RelativeLayout android:orientation="vertical"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@+id/ansA"
                android:layout_centerHorizontal="true"
                android:layout_marginTop="10dip"
                android:id="@+id/ansB"
                android:background="@drawable/ans_bg_new">            
    <TextView android:layout_width="250dip"
              android:layout_height="fill_parent"
              android:textColor="#000000"
              android:minHeight="35dip"
              android:gravity="center_vertical"
              android:layout_below="@+id/ans1"
              android:layout_centerHorizontal="true"
              android:id="@+id/ans2"/>
</RelativeLayout>
<RelativeLayout android:orientation="vertical"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_centerHorizontal="true"
                android:layout_below="@+id/ansB"
                android:id="@+id/ansC"
                android:layout_marginTop="10dip"
                android:background="@drawable/ans_bg_new">            
    <TextView android:layout_width="250dip"
              android:layout_height="fill_parent"
              android:textColor="#000000" 
              android:minHeight="35dip"
              android:gravity="center_vertical"
              android:layout_below="@+id/ans2"
              android:layout_centerHorizontal="true"
              android:id="@+id/ans3"/>
</RelativeLayout>
<RelativeLayout android:orientation="vertical"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_centerHorizontal="true"
                android:layout_below="@+id/ansC"
                android:layout_marginTop="10dip"
                android:background="@drawable/ans_bg_new"
                android:id="@+id/ansD">           
    <TextView android:layout_width="250dip"
              android:layout_height="fill_parent"
              android:layout_below="@+id/ans3"
              android:textColor="#000000" 
              android:minHeight="35dip"
              android:gravity="center_vertical"
              android:layout_centerHorizontal="true"
              android:id="@+id/ans4"/>

 </RelativeLayout>

 </RelativeLayout>
 </ScrollView>

有什么建议吗?

谢谢....

i am creating demo app for question answer. its MCQ type test. i have set all question and answers layout in scrollview. the size of question and answers layout is change according to question and answer's content.

when i scroll for my last ans option and then load next question my question view is hide under scroll on top. i want to start scroll from top every time when my new question and answer is load.

Here is my XML :

 <ScrollView android:scrollbars="vertical"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:id="@+id/scroll"
                android:layout_below="@+id/que_count"
                android:layout_marginBottom="20dip">
<RelativeLayout android:orientation="vertical"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_below="@+id/topbar"
                android:layout_centerHorizontal="true"
                android:id="@+id/road_sign_layout">
<RelativeLayout android:orientation="vertical"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="10dip"
                android:layout_marginLeft="10dip"
                android:layout_marginRight="10dip"
                android:layout_below="@+id/topbar"
                android:layout_centerHorizontal="true"
                android:background="@drawable/bubble1"
                android:id="@+id/que">
    <ImageView android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_marginLeft="3dip"
              android:id="@+id/road_signs_images"/>         
    <TextView android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:textColor="#000000"
              android:textStyle="bold"
              android:layout_marginLeft="5dip"
              android:textSize="15dip"
              android:id="@+id/question"/>
</RelativeLayout>

<RelativeLayout android:orientation="vertical"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@+id/que"
                android:layout_centerHorizontal="true"
                android:layout_marginTop="10dip"
                android:id="@+id/ansA"
                android:background="@drawable/ans_bg_new">            
    <TextView android:layout_width="250dip"
              android:layout_height="fill_parent"
              android:textColor="#000000"
              android:minHeight="35dip"
              android:gravity="center_vertical"
              android:layout_centerHorizontal="true"
              android:layout_below="@+id/question"
              android:id="@+id/ans1"/>
</RelativeLayout>
<RelativeLayout android:orientation="vertical"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@+id/ansA"
                android:layout_centerHorizontal="true"
                android:layout_marginTop="10dip"
                android:id="@+id/ansB"
                android:background="@drawable/ans_bg_new">            
    <TextView android:layout_width="250dip"
              android:layout_height="fill_parent"
              android:textColor="#000000"
              android:minHeight="35dip"
              android:gravity="center_vertical"
              android:layout_below="@+id/ans1"
              android:layout_centerHorizontal="true"
              android:id="@+id/ans2"/>
</RelativeLayout>
<RelativeLayout android:orientation="vertical"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_centerHorizontal="true"
                android:layout_below="@+id/ansB"
                android:id="@+id/ansC"
                android:layout_marginTop="10dip"
                android:background="@drawable/ans_bg_new">            
    <TextView android:layout_width="250dip"
              android:layout_height="fill_parent"
              android:textColor="#000000" 
              android:minHeight="35dip"
              android:gravity="center_vertical"
              android:layout_below="@+id/ans2"
              android:layout_centerHorizontal="true"
              android:id="@+id/ans3"/>
</RelativeLayout>
<RelativeLayout android:orientation="vertical"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_centerHorizontal="true"
                android:layout_below="@+id/ansC"
                android:layout_marginTop="10dip"
                android:background="@drawable/ans_bg_new"
                android:id="@+id/ansD">           
    <TextView android:layout_width="250dip"
              android:layout_height="fill_parent"
              android:layout_below="@+id/ans3"
              android:textColor="#000000" 
              android:minHeight="35dip"
              android:gravity="center_vertical"
              android:layout_centerHorizontal="true"
              android:id="@+id/ans4"/>

 </RelativeLayout>

 </RelativeLayout>
 </ScrollView>

any suggetion?

Thanks....

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

薄凉少年不暖心 2024-12-08 09:15:34

请尝试这段代码。

将代码写在加载新题的代码后面。

chatScrollView.post(new Runnable() 
        { 
            public void run() { 
                chatScrollView.fullScroll(ScrollView.FOCUS_UPs); 
            } 
        });

让我知道它是否有效?

Please try this code.

Write the code after the code of loading new question.

chatScrollView.post(new Runnable() 
        { 
            public void run() { 
                chatScrollView.fullScroll(ScrollView.FOCUS_UPs); 
            } 
        });

Let me know it's working or not ?

一抹苦笑 2024-12-08 09:15:34

您只能在 scrollview 下放置一个布局,而不是您使用的嵌套布局..删除内部布局..

请参阅此文档:

http://developer.android.com/reference/android/widget/ScrollView.html

you can put only one layout under scrollview not the nested layout as you have used..remove the inner layout ..

refer this doc:

http://developer.android.com/reference/android/widget/ScrollView.html

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文