我正在开发一个Android应用程序,它会在屏幕上显示一些细节。 我只是在相对布局上使用textviews。屏幕和模拟器上的布局似乎很好。但是当我在设备上运行应用程序时,它会变得混乱,并且一些文本视图会相互重叠。
我的代码如下:
<?xml version="1.0" encoding="utf-8"?>
<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:id="@+id/activity_home"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="aaa.app_zero.HomeActivity">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:srcCompat="@mipmap/ic_launcher"
android:layout_alignParentTop="true"
android:layout_alignParentStart="true"
android:id="@+id/displaypic" />
<TextView
android:text="Your Name Comes Here"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/displaypic"
android:layout_toEndOf="@+id/displaypic"
android:layout_marginStart="11dp"
android:id="@+id/name"
android:textSize="24sp" />
<TextView
android:text="Register Number : "
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/displaypic"
android:layout_alignParentStart="true"
android:layout_marginTop="6dp"
android:id="@+id/registertext"
android:textSize="18sp" />
<TextView
android:text="Register No. here"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/registernumber"
android:textSize="18sp"
android:layout_alignBaseline="@+id/registertext"
android:layout_alignBottom="@+id/registertext"
android:layout_toEndOf="@+id/registertext" />
<TextView
android:text="Office Name : "
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/registertext"
android:layout_alignParentStart="true"
android:layout_marginTop="6dp"
android:id="@+id/officetext"
android:textSize="18sp" />
<TextView
android:text="Office Name hereOffice Name hereOffice Name hereOffice Name hereOffice Name here"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/officename"
android:textSize="18sp"
android:layout_alignBaseline="@+id/officetext"
android:layout_alignBottom="@+id/officetext"
android:layout_toEndOf="@+id/officetext" />
<TextView
android:text="Course Name : "
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/officename"
android:layout_alignParentStart="true"
android:layout_marginTop="6dp"
android:id="@+id/coursetext"
android:textSize="18sp" />
<TextView
android:text="Course Name HereCourse Name HereCourse Name HereCourse Name HereCourse Name Here"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/coursetext"
android:layout_toEndOf="@+id/coursetext"
android:layout_alignBaseline="@+id/coursetext"
android:id="@+id/coursename"
android:textSize="18sp" />
<TextView
android:text="Father's Name : "
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/coursename"
android:layout_alignParentStart="true"
android:layout_marginTop="6dp"
android:id="@+id/fathertext"
android:textSize="18sp" />
<TextView
android:text="Father's Name here"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/fathername"
android:layout_alignBottom="@+id/fathertext"
android:layout_toEndOf="@+id/fathertext"
android:textSize="18sp" />
<TextView
android:text="Date of Birth : "
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/fathername"
android:layout_alignParentStart="true"
android:layout_marginTop="6dp"
android:id="@+id/dobtext"
android:textSize="18sp" />
<TextView
android:text="DOB here"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/dob"
android:textSize="18sp"
android:layout_alignBaseline="@+id/dobtext"
android:layout_alignBottom="@+id/dobtext"
android:layout_toEndOf="@+id/officetext" />
<TextView
android:text="Sex : "
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/dobtext"
android:layout_alignParentStart="true"
android:layout_marginTop="6dp"
android:id="@+id/sextext"
android:textSize="18sp" />
<TextView
android:text="Sex here"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/sex"
android:textSize="18sp"
android:layout_alignBaseline="@+id/sextext"
android:layout_alignBottom="@+id/sextext"
android:layout_toEndOf="@+id/sextext" />
<TextView
android:text="Blood Group : "
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/sextext"
android:layout_alignParentStart="true"
android:layout_marginTop="6dp"
android:id="@+id/bloodgrouptext"
android:textSize="18sp" />
<TextView
android:text="Blood group here"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/bloodgroup"
android:layout_alignBottom="@+id/bloodgrouptext"
android:layout_toEndOf="@+id/dobtext"
android:textSize="18sp" />
<TextView
android:text="Address : "
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/bloodgrouptext"
android:layout_alignParentStart="true"
android:layout_marginTop="6dp"
android:id="@+id/addresstext"
android:textSize="18sp" />
<TextView
android:text="Address here"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/addresstext"
android:layout_toEndOf="@+id/addresstext"
android:layout_alignBaseline="@+id/addresstext"
android:id="@+id/address"
android:textSize="18sp" />
<TextView
android:text="Email : "
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/address"
android:layout_alignParentStart="true"
android:layout_marginTop="6dp"
android:id="@+id/emailtext"
android:textSize="18sp" />
<TextView
android:text="example@example.com"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/email"
android:layout_alignBaseline="@+id/emailtext"
android:layout_alignBottom="@+id/emailtext"
android:layout_alignStart="@+id/name"
android:textSize="18sp" />
<TextView
android:text="Pincode : "
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/email"
android:layout_alignParentStart="true"
android:layout_marginTop="6dp"
android:id="@+id/pincodetext"
android:textSize="18sp" />
<TextView
android:text="Pincode Here"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/pincode"
android:layout_alignBottom="@+id/pincodetext"
android:layout_toEndOf="@+id/addresstext"
android:textSize="18sp" />
<TextView
android:text="Validity : "
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/pincodetext"
android:layout_alignParentStart="true"
android:layout_marginTop="6dp"
android:id="@+id/validitytext"
android:textSize="18sp" />
<TextView
android:text="Validity Here"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/validity"
android:layout_alignBottom="@+id/validitytext"
android:layout_alignBaseline="@+id/validitytext"
android:layout_toEndOf="@+id/validitytext"
android:textSize="18sp" />
</RelativeLayout>
此 预期的布局和模拟器中显示的是
但是设备上的布局是这样的
对此事的任何帮助将不胜感激。谢谢。
答案 0 :(得分:0)
使用linearlayout帮助
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto">
<LinearLayout
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/photoandname"
android:layout_alignParentTop="true"
android:layout_alignParentStart="true"
android:paddingLeft="6dp"
android:paddingTop="6dp">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
app:srcCompat="@mipmap/ic_launcher"
android:id="@+id/displaypic"
android:layout_weight="1" />
<TextView
android:text="Your Name Comes Here"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="11dp"
android:id="@+id/name"
android:textSize="24sp"
android:layout_weight="1"
android:layout_gravity="bottom" />
</LinearLayout>
<ScrollView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/photoandname"
android:layout_alignParentStart="true"
android:paddingLeft="6dp"
android:paddingBottom="6dp">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/photoandname"
android:layout_alignParentStart="true"
android:id="@+id/data"
android:paddingTop="6dp"
android:paddingLeft="6dp">
<TextView
android:text="Register Number : "
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/registernumber"
android:textSize="18sp"
android:paddingBottom="6dp" />
<TextView
android:text="Office Name : "
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/officename"
android:textSize="18sp"
android:paddingBottom="6dp" />
<TextView
android:text="Course Name : "
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/coursename"
android:textSize="18sp"
android:paddingBottom="6dp" />
<TextView
android:text="Father's Name : "
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/fathername"
android:textSize="18sp"
android:paddingBottom="6dp" />
<TextView
android:text="Date of Birth : "
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/dob"
android:textSize="18sp"
android:paddingBottom="6dp" />
<TextView
android:text="Sex : "
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/sex"
android:textSize="18sp"
android:paddingBottom="6dp" />
<TextView
android:text="Blood Group : "
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/bloodgroup"
android:textSize="18sp"
android:paddingBottom="6dp" />
<TextView
android:text="Address : "
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/address"
android:textSize="18sp"
android:paddingBottom="6dp" />
<TextView
android:text="Email : "
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/email"
android:textSize="18sp"
android:paddingBottom="6dp" />
<TextView
android:text="Pincode : "
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/pincode"
android:textSize="18sp"
android:paddingBottom="6dp" />
<TextView
android:text="Validity : "
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/validity"
android:textSize="18sp"
android:paddingBottom="6dp" />
</LinearLayout>
</ScrollView>
答案 1 :(得分:0)
尝试此布局:如果需要,请自行指定边距或填充,使用此布局将在所有设备中相同。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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:id="@+id/activity_home"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="aaa.app_zero.HomeActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="bottom"
android:orientation="horizontal">
<ImageView
android:id="@+id/displaypic"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:srcCompat="@mipmap/ic_launcher" />
<TextView
android:id="@+id/name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="11dp"
android:text="Your Name Comes Here"
android:textSize="24sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="bottom"
android:orientation="horizontal">
<TextView
android:id="@+id/registertext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/displaypic"
android:layout_marginTop="6dp"
android:text="Register Number : "
android:textSize="18sp" />
<TextView
android:id="@+id/registernumber"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Register No. here"
android:textSize="18sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="bottom"
android:orientation="horizontal">
<TextView
android:id="@+id/officetext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="Office Name : "
android:textSize="18sp" />
<TextView
android:id="@+id/officename"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Office Name hereOffice Name hereOffice Name hereOffice Name hereOffice Name here"
android:textSize="18sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="bottom"
android:orientation="horizontal">
<TextView
android:id="@+id/coursetext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="Course Name : "
android:textSize="18sp" />
<TextView
android:id="@+id/coursename"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Course Name HereCourse Name HereCourse Name HereCourse Name HereCourse Name Here"
android:textSize="18sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="bottom"
android:orientation="horizontal">
<TextView
android:id="@+id/fathertext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="Father's Name : "
android:textSize="18sp" />
<TextView
android:id="@+id/fathername"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="18sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="bottom"
android:orientation="horizontal">
<TextView
android:id="@+id/dobtext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="Date of Birth : "
android:textSize="18sp" />
<TextView
android:id="@+id/dob"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="DOB here"
android:textSize="18sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="bottom"
android:orientation="horizontal">
<TextView
android:id="@+id/sextext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="Sex : "
android:textSize="18sp" />
<TextView
android:id="@+id/sex"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Sex here"
android:textSize="18sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="bottom"
android:orientation="horizontal">
<TextView
android:id="@+id/bloodgrouptext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="Blood Group : "
android:textSize="18sp" />
<TextView
android:id="@+id/bloodgroup"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Blood group here"
android:textSize="18sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="bottom"
android:orientation="horizontal">
<TextView
android:id="@+id/addresstext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="Address : "
android:textSize="18sp" />
<TextView
android:id="@+id/address"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Address here"
android:textSize="18sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="bottom"
android:orientation="horizontal">
<TextView
android:id="@+id/emailtext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="Email : "
android:textSize="18sp" />
<TextView
android:id="@+id/email"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="example@example.com"
android:textSize="18sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="bottom"
android:orientation="horizontal">
<TextView
android:id="@+id/pincodetext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="Pincode : "
android:textSize="18sp" />
<TextView
android:id="@+id/pincode"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Pincode Here"
android:textSize="18sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="bottom"
android:orientation="horizontal">
<TextView
android:id="@+id/validitytext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="Validity : "
android:textSize="18sp" />
<TextView
android:id="@+id/validity"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Validity Here"
android:textSize="18sp" />
</LinearLayout>
</LinearLayout>