我很难知道为什么我的imageView不会出现在tableLayout之上。 作为我评估的一部分,我必须使用RelativeLayout而不是linearLayout,我应该在TableLayout上面设置一个图像,但它不起作用。 这是我的代码:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.mad.exercise3.MainActivity">
<ImageView
android:id="@+id/image"
android:layout_width="match_parent"
android:layout_height="@dimen/imageSize"
android:layout_marginTop="20dp"
android:contentDescription="@string/imageDescription"
app:srcCompat="@mipmap/ic_launcher_round"
android:layout_alignParentTop="true"/>
<TableLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginEnd="10dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginStart="10dp"
android:layout_marginTop="20dp">
<TableRow
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/textView_fn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/TextView_fn" />
<EditText
android:id="@+id/editText_fn"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="3"
android:inputType="textPersonName" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/textView_ln"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/viewText_ln" />
<EditText
android:id="@+id/editText_ln"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="3"
android:inputType="textPersonName" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/textView_phone"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/textView_phone" />
<EditText
android:id="@+id/editText_phone"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="3"
android:inputType="phone" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/textView_email"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/textView_email" />
<EditText
android:id="@+id/editText_email"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="3"
android:inputType="textEmailAddress" />
</TableRow>
</TableLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="10dp">
<Button
android:id="@+id/swapBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/swapBtn" />
<Button
android:id="@+id/rotateBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/rotateBtn" />
</LinearLayout>
这就是android studio正在展示的内容。 result
由于某种原因,即使我将图像视图设置为alignParentTop,imageView和tableLayout也出现在同一区域中。
答案 0 :(得分:0)
使用表格布局的ID,然后从您的图片添加:android:layout_above:"id/tablelayout"
答案 1 :(得分:0)
试试这个
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.mad.exercise3.MainActivity">
<ImageView
android:id="@+id/image"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:contentDescription="@string/imageDescription"
app:srcCompat="@mipmap/ic_launcher_round"
android:layout_alignParentTop="true"/>
<TableLayout
android:layout_below="@+id/image"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginEnd="10dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginStart="10dp"
android:layout_marginTop="20dp">
<TableRow
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/textView_fn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/TextView_fn" />
<EditText
android:id="@+id/editText_fn"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="3"
android:inputType="textPersonName" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/textView_ln"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/viewText_ln" />
<EditText
android:id="@+id/editText_ln"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="3"
android:inputType="textPersonName" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/textView_phone"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/textView_phone" />
<EditText
android:id="@+id/editText_phone"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="3"
android:inputType="phone" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/textView_email"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/textView_email" />
<EditText
android:id="@+id/editText_email"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="3"
android:inputType="textEmailAddress" />
</TableRow>
</TableLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="10dp">
<Button
android:id="@+id/swapBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/swapBtn" />
<Button
android:id="@+id/rotateBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/rotateBtn" />
</LinearLayout>
将android:layout_height="wrap_content"
添加到您的imageview,将android:layout_below="@+id/image"
添加到TableLayout