Java 在Android studio中,我需要使用什么类型的填充来将按钮置于屏幕中央?
我正在尝试调整应用程序的主屏幕,使按钮稍微向右移动 这里有一个链接,指向我当前主屏幕的图像版本 以下是我希望它看起来的样子: 我上传的所有图标都有额外的空间来调整填充。我在草图上制作了图标,并将它们作为整个按钮上传。 下面是其中一个的屏幕截图: 我知道我需要做一些填充,但我应该写些什么来确保图标和文本向右移动 以下是相关活动:Java 在Android studio中,我需要使用什么类型的填充来将按钮置于屏幕中央?,java,android,android-studio,Java,Android,Android Studio,我正在尝试调整应用程序的主屏幕,使按钮稍微向右移动 这里有一个链接,指向我当前主屏幕的图像版本 以下是我希望它看起来的样子: 我上传的所有图标都有额外的空间来调整填充。我在草图上制作了图标,并将它们作为整个按钮上传。 下面是其中一个的屏幕截图: 我知道我需要做一些填充,但我应该写些什么来确保图标和文本向右移动 以下是相关活动: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:
<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"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
tools:context="com.example.leoconnelly.connexus.MainActivity">
<LinearLayout
android:id="@+id/ll_learn"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="center_vertical"
android:layout_weight="1">
<ImageButton
android:id="@+id/learn"
android:layout_width="match_parent"
android:scaleType="centerCrop"
android:src="@mipmap/learn_layer_long"
android:layout_height="match_parent"
android:layout_gravity="center_vertical"
android:padding="0dp"
android:layout_weight="1"
android:text="@string/learn"
android:textSize="22sp"
/>
</LinearLayout>
<LinearLayout
android:id="@+id/ll_find_care"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:layout_gravity="center_vertical">
<ImageButton
android:id="@+id/find_care_button"
android:layout_width="match_parent"
android:padding = "0dp"
android:scaleType="centerCrop"
android:src="@mipmap/findcare_layer_long"
android:layout_height="match_parent"
android:layout_gravity="center_vertical"
android:layout_weight="1"
android:text="@string/learn"
android:textSize="22sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/ll_talk_to_doctor"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:layout_gravity="center_vertical">
<ImageButton
android:id="@+id/TalkToADocButton"
android:layout_width="match_parent"
android:scaleType="centerCrop"
android:src="@mipmap/talk_doc_layer_long"
android:layout_height="match_parent"
android:layout_gravity="center_vertical"
android:padding="0dp"
android:layout_weight="1"
android:textSize="22sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/ll_visit_website"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:layout_gravity="center_vertical">
<ImageButton
android:id="@+id/VisitWeb"
android:layout_width="match_parent"
android:scaleType="centerCrop"
android:src="@mipmap/visit_web_layer_long"
android:layout_height="match_parent"
android:layout_gravity="center_vertical"
android:padding="0dp"
android:layout_weight="1"
android:textSize="22sp" />
</LinearLayout>
试试看:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<LinearLayout
android:id="@+id/ll_learn"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1">
<ImageView
android:src="@mipmap/findcare_layer_long"
android:scaleType="centerCrop"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"/>
<TextView
android:text="@android:string/untitled"
android:gravity="center"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:textSize="22sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/ll_find_care"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1">
<ImageView
android:src="@mipmap/findcare_layer_long"
android:scaleType="centerCrop"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"/>
<TextView
android:text="@android:string/untitled"
android:gravity="center"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:textSize="22sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/ll_talk_to_doctor"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1">
<ImageView
android:src="@mipmap/talk_doc_layer_long"
android:scaleType="centerCrop"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"/>
<TextView
android:text="@android:string/untitled"
android:gravity="center"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:textSize="22sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/ll_visit_website"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1">
<ImageView
android:src="@mipmap/visit_web_layer_long"
android:scaleType="centerCrop"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"/>
<TextView
android:text="@android:string/untitled"
android:gravity="center"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:textSize="22sp" />
</LinearLayout>
</LinearLayout>
在父布局中设置填充。因此,如果您想为“5dp”的所有四个侧面添加填充物,请执行以下操作:
<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"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:paddingBottom="5dp"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:paddingTop="5dp"
tools:context="com.example.leoconnelly.connexus.MainActivity">
我在这里定制了您的布局文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<LinearLayout
android:id="@+id/ll_learn"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="center_vertical"
android:layout_weight="1"
android:background="@android:color/holo_blue_light">
<TextView
android:id="@+id/learn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center_vertical"
android:layout_marginStart="20dp"
android:layout_marginEnd="20dp"
android:drawablePadding="30dp"
android:drawableStart="@drawable/ic_ico"
android:gravity="center_vertical|center_horizontal"
android:scaleType="centerCrop"
android:text="learn"
android:textStyle="bold"
android:textColor="@color/white"
android:textSize="30sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/ll_find_care"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="center_vertical"
android:layout_weight="1"
android:background="@android:color/holo_green_dark">
<TextView
android:id="@+id/find_care"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center_vertical"
android:layout_marginStart="20dp"
android:layout_marginEnd="20dp"
android:drawablePadding="30dp"
android:drawableStart="@drawable/ic_ico"
android:gravity="center_vertical|center_horizontal"
android:scaleType="centerCrop"
android:text="Find Care"
android:textStyle="bold"
android:textColor="@color/white"
android:textSize="30sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/ll_talk_to_doctor"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="center_vertical"
android:layout_weight="1"
android:background="@android:color/holo_orange_dark">
<TextView
android:id="@+id/TalkToADocButton"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center_vertical"
android:layout_marginStart="20dp"
android:layout_marginEnd="20dp"
android:drawablePadding="30dp"
android:drawableStart="@drawable/ic_ico"
android:gravity="center_vertical|center_horizontal"
android:scaleType="centerCrop"
android:text="Emergency"
android:textStyle="bold"
android:textColor="@color/white"
android:textSize="30sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/ll_visit_website"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="center_vertical"
android:layout_weight="1"
android:background="@android:color/holo_red_dark">
<TextView
android:id="@+id/VisitWeb"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center_vertical"
android:layout_marginStart="20dp"
android:layout_marginEnd="20dp"
android:drawablePadding="30dp"
android:drawableStart="@drawable/ic_ico"
android:gravity="center_vertical|center_horizontal"
android:scaleType="centerCrop"
android:text="Message to a Doctor"
android:textStyle="bold"
android:textColor="@color/white"
android:textSize="30sp" />
</LinearLayout>
注意:根据您的要求更改颜色和图标。因为这里我使用了样本图像和颜色进行测试
输出:
您可能希望研究使用ConstraintLayout。居中项目并为其添加权重要容易得多。实现这一点的最佳方法是通过约束布局。它响应迅速,可以处理所有屏幕大小。这不起作用,因为这些都是图像按钮,而不是图像。但您可以单击
LinearLayout
,这没有区别