我正在使用ScrollView和RelativeLayout。我在屏幕底部有一个按钮。 我希望按钮在滚动时随屏幕移动。按钮应出现在屏幕的右下角。
我已尝试使用FrameLayout,如同与此问题相关的其中一个答案中所述,但我希望我的按钮位于屏幕右下角。 截至目前,整个屏幕的底部都有按钮,这意味着你需要向下滚动才能看到它。
<ScrollView
android:layout_height="match_parent"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:fillViewport="true"
>
<RelativeLayout
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
android:layout_width="match_parent"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context="com.example.android.app1.SecondScreen">
<TextView
android:text="Check all the Symptoms which apply - "
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="25sp"
android:id="@+id/textView" />
<CheckBox1>
<CheckBox2>
<CheckBox3>
<CheckBox4>
<CheckBox5>
<CheckBox6>
<CheckBox7>
<CheckBox8>
<CheckBox9>
<CheckBox10>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="25sp"
android:text="submit"
android:id="@+id/submitbutton"
android:layout_below="@id/Lastcheckbox"
android:layout_alignParentRight="true"
/>
</RelativeLayout>
</ScrollView>
如何实现这一目标?
答案 0 :(得分:1)
您需要一个浮动操作按钮:
<RelativeLayout
...
xmlns:app="http://schemas.android.com/apk/res-auto">
<android.support.design.widget.FloatingActionButton
android:id="@+id/myFAB"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_plus_sign"
app:elevation="4dp"
... />
...
在您的应用级别gradle中
compile 'com.android.support:design:23.1.1'
获得整个工作项目
将Android Studio更新为1.5
创建一个名为Blank Activity的新项目,它会自动为您生成!
答案 1 :(得分:1)
使用FloatingActionBar
代替普通按钮,它始终位于屏幕右下角,使用设计支持库。
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
android:layout_margin="@dimen/fab_margin"
android:src="@android:drawable/ic_dialog_email" />
答案 2 :(得分:0)
您可以使用按钮
分隔滚动视图<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_height="match_parent"
android:layout_width="match_parent">
<ScrollView
android:id="@+id/myScrollView"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:fillViewport="true"
android:layout_above="@+id/submitbutton">
<RelativeLayout
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
android:layout_width="match_parent"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context="com.example.android.app1.SecondScreen">
<TextView
android:text="Check all the Symptoms which apply - "
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="25sp"
android:id="@+id/textView" />
<CheckBox1/>
<CheckBox2/>
<CheckBox3/>
<CheckBox4/>
<CheckBox5/>
<CheckBox6/>
<CheckBox7/>
<CheckBox8/>
<CheckBox9/>
<CheckBox10/>
</RelativeLayout>
</ScrollView>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="25sp"
android:text="submit"
android:id="@+id/submitbutton"
android:layout_alignParentRight="true"
android:layout_alignParentBottom="true" />
</RelativeLayout>
答案 3 :(得分:0)
您可以像其他人一样使用FloatingActionButton
。
要么
您可以将ScrollView
放在LinearLayout
中,然后将按钮放在ScrollView
之后,如下所示:
<LinearLayout ....>
<ScrollView
android:layout_width=".."
android:layout_height="0"
android:layout_weight="1">
<RelativeLayout>
.
.
.
</RelativeLayout>
</ScrollView>
<Button android:layout_gravity = "right" ..... />
</LinearLayout>