我为这个模糊的标题道歉,我不确定如何最好地确定这个问题,并且很难找到关于这个问题的先前存在的问题。
我希望屏幕看起来像左边的图像,但实际上它看起来就像右边的图像。
左边是绘图工具栏的片段,显示了铅笔和橡皮擦的占位符图标。它希望它始终位于屏幕的底角,而屏幕的其余部分是绘图区域(在另一个片段中实现)。我有一个实例化两个片段的活动,如右图所示。如您所见,工具栏元素不在所需的位置。我不知道为什么会这样。我知道我可以通过向其他片段添加按钮等将工具栏片段移动到所需的位置,但这会混淆绘图字段,因此这是不可取的。我如何才能最好地解决这个问题?
以下是两个XML文件的代码:
绘图工具栏:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:layout_gravity="bottom|left"
android:orientation="horizontal"
>
<ImageButton
android:id="@+id/pencil"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_gravity="left"
android:background="@drawable/pencil"
/>
<ImageButton
android:id="@+id/eraser"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_gravity="center"
android:background="@drawable/eraser"
/>
</LinearLayout>
实例化活动:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context=".com.example.chris.drawingtest.DrawingActivity">
<fragment
android:name="com.example.chris.drawingtest.DrawingFragment"
android:id="@+id/Drawing"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
tools:layout="@layout/fragment_drawing"
/>
<fragment
android:name="com.example.chris.drawingtest.ToolbarFragment"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/Toolbar"
tools:layout="@layout/fragment_toolbar"
/>
</LinearLayout>
感谢您的帮助!
答案 0 :(得分:1)
绘图片段目前没有内容。工具栏内容确实包含内容。它直接位于图形片段下方。
低于零度的东西最终会处于最顶端。
要解决此问题,请将此行添加到工具栏片段的XML中:
android:layout_alignParentBottom="true"
击> <击> 撞击>
对不起,快读这个。 LinearLayout
未提供layout_alignParentBottom
。相反,你会想要使用它:
android:layout_gravity="bottom"