gpt4 book ai didi

android - 在 ScrollView 屏幕底部定位按钮并设置比例宽度

转载 作者:行者123 更新时间:2023-11-30 02:45:00 25 4
gpt4 key购买 nike

我想实现如下所示的屏幕布局,屏幕顶部有一个 Scrollview,屏幕底部固定有 2 个按钮 block 。我还希望按钮占据屏幕宽度的固定比例,并在水平布局中使用权重来实现这一点。 Desired layout

ScrollView 行是从数据库表中填充的,可能包含太多行而无法在单个屏幕上显示。为此,我只希望 ScrollView 占据屏幕顶部的固定比例,以便按钮始终出现在屏幕底部。

我尝试在此处调整解决方案:Android ScrollView and buttons at bottom of the screen - 替换我自己的界面元素,但这导致 ScrollView 占据了整个屏幕,并且按钮根本不可见。我怀疑这是因为我的“layoutContainer”LinearLayout 中的权重与建议解决方案的设计相冲突。

我当前的代码如下。这会很好地呈现 ScrollView 和 Buttons,直到 Scrollview 变得太大 - 当这种情况发生时,按钮从屏幕底部消失。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/background"
android:orientation="vertical"
tools:context="com.itm.timer.ItemActivity"
tools:ignore="MergeRootFrame" >

<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="3"
android:gravity="top"
android:text="@string/activity_meal_item_textview1"
android:textSize="16sp"
android:textStyle="bold" />

<ScrollView
android:id="@+id/scrollViewRecords"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="75" >

<LinearLayout
android:id="@+id/linearLayoutRecords"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
</LinearLayout>
</ScrollView>

<LinearLayout
android:id="@+id/layoutContainer"
android:layout_width="fill_parent"
android:layout_height="0dip"
android:orientation="horizontal" >

<RelativeLayout
android:layout_width="0dip"
android:layout_height="0dip"
android:layout_weight="2" >
</RelativeLayout>

<RelativeLayout
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="20" >

<Button
android:id="@+id/btnMealPlan"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:drawableLeft="@drawable/clipboard"
android:onClick="onClickMealPlan"
android:text="Show Meal Plan" />

<Button
android:id="@+id/btnStartTimer"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/btnMealPlan"
android:drawableLeft="@drawable/starttimer"
android:onClick="onClickStartTimer"
android:text="Set Reminders" />
</RelativeLayout>

<RelativeLayout
android:layout_width="0dip"
android:layout_height="0dip"
android:layout_weight="2" >
</RelativeLayout>
</LinearLayout>


</LinearLayout>

关于如何实现我想要的,或者如何简化我的设计以实现在屏幕上的固定位置容纳 ScrollView 和 Buttons 的目的有什么想法吗?

最佳答案

像这样尝试它可能对你有帮助,

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
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:gravity="top"
android:padding="5dp"
android:text="MeatItem"
android:textSize="16sp"
android:textStyle="bold" />

<ScrollView
android:id="@+id/scrollViewRecords"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
android:layout_weight="1"
android:background="@android:color/holo_blue_light" >

<LinearLayout
android:id="@+id/linearLayoutRecords"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="5dp"
android:text="ScoollView"
android:textSize="16sp"
android:textStyle="bold" />
</LinearLayout>
</ScrollView>

<LinearLayout
android:id="@+id/layoutContainer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:layout_marginLeft="15dp"
android:layout_marginRight="15dp"
android:layout_marginTop="10dp"
android:orientation="vertical" >

<Button
android:id="@+id/btn1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@android:color/holo_blue_dark"
android:text="Button1"
android:textColor="@android:color/white" />

<Button
android:id="@+id/btn2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:background="@android:color/holo_blue_dark"
android:text="Button2"
android:textColor="@android:color/white" />

<Button
android:id="@+id/btn3"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:background="@android:color/holo_blue_dark"
android:text="Button3"
android:textColor="@android:color/white" />
</LinearLayout>

</LinearLayout>

关于android - 在 ScrollView 屏幕底部定位按钮并设置比例宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25216786/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com