好的我正在尝试创建一个屏幕上有很多按钮,显然我用完了空间,所以我将我的布局设置为ScrollView,其下方有相对布局,然后将所有按钮放在其中。 / p>
继承人代码:
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="1000dp" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
android:fillViewport="true"
tools:context="com.cecode.www.gjcode.MainTypes"
android:animateLayoutChanges="true">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Options Menu(placeholder)"
android:id="@+id/optionsBtn"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<Button
android:layout_width="400dp"
android:layout_height="80dp"
android:text="Top Text"
android:id="@+id/button1"
android:layout_marginTop="110dp"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
/>
<Button
android:layout_width="400dp"
android:layout_height="80dp"
android:text="placeholder text"
android:id="@+id/button2"
android:layout_marginTop="20dp"
android:layout_below="@+id/button1"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<Button
android:layout_width="400dp"
android:layout_height="80dp"
android:text="placeholder text"
android:id="@+id/button3"
android:layout_marginTop="20dp"
android:layout_below="@+id/button2"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<Button
android:layout_width="400dp"
android:layout_height="80dp"
android:text="placeholder text"
android:id="@+id/button4"
android:layout_marginTop="20dp"
android:layout_below="@+id/button3"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="mid text"
android:id="@+id/textView3"
android:layout_below="@+id/button4"
android:layout_alignRight="@+id/optionsBtn"
android:layout_alignEnd="@+id/optionsBtn"
android:layout_marginTop="37dp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="bottom text"
android:id="@+id/textView4"
android:layout_alignParentBottom="true"
android:layout_alignLeft="@+id/textView3"
android:layout_alignStart="@+id/textView3" />
</RelativeLayout>
</ScrollView>
下面是屏幕截图 -
我的问题是,当我在设备上测试它时,它不会滚动到中间文本点,所以我无法找到底部文本位。谢谢!
答案 0 :(得分:2)
替换
$query = "SELECT users.first_name AS first_name, users.last_name AS last_name, messages.id AS mess_id,
messages.message AS message, DATE_FORMAT(messages.created_at, '%M %e %Y') AS time
FROM users
LEFT JOIN messages
ON users.id = messages.user_id
ORDER BY time DESC";
$results = fetch($query);
foreach ($results as $row) {
$_SESSION['messages.id'] = $row['mess_id'];
echo
"<div class='post'>".
$row['first_name']. " ". $row['last_name']. " - ". $row['time']. "<br>".
"<p class='mess_content'>". $row['message']. "</p>
</div><br>
<div class='posted_comm'>";
$query = "SELECT users.first_name AS first_name, users.last_name AS last_name,
comments.message_id, DATE_FORMAT(comments.created_at, '%M %e %Y') AS time, comments.comment AS comment
FROM users
LEFT JOIN comments
ON users.id = comments.user_id
WHERE comments.message_id = '{$_SESSION['messages.id']}'
ORDER BY time ASC";
$results1 = fetch($query);
foreach ($results1 as $value) {
echo
"<div class='comments'>".
$value['first_name']. " ". $value['last_name']. " - ". $value['time']. "<br>".
"<p class='comm_content'>". $value['comment']. "</p>
</div><br>";
}
echo "<div class='write_comm'>
<form method='post' action='mess_comm.php'>
<input type='hidden' name='action' value='post_comm'>
Post a comment:<input type='text' name='comm' class='comm'>
<input type='submit' value='Post a comment' class='comm_sub'>
</form>
</div>";
带
android:layout_height="1000dp"
让我知道它是否有效
好的,你可以根据你的要求指定你可以使用带有verticla方向的LinearLayout,在中间和底部文本之间放置另一个带有wrap_content高度的线性布局来添加你的按钮如果你想在添加按钮之前有一些空间你可以指定minheight to布局看下面的代码
android:layout_height="match_parent"
答案 1 :(得分:1)
很难满足您的要求。让我解释一下它目前是如何运作的。 ScrollView没有给出确切的高度,所以当你为相对布局设置match_parent时,我猜它会为这个视图设置最大高度 - Integer.MAX_VALUE。这就是Android Studio警告您将match_parent更改为wrap_content的原因。 如果您需要在底部显示此视图 - 在运行时设置底部视图的边距。