Android 仅在按钮上水平和垂直居中放置图标(不包括文本)
我在im创建的应用程序底部有3个按钮,我只是尝试使用一些android常用图标,而不是文本或两者的组合。有<代码> ANDIO:Debug启动/顶部/底部/ ETC/<代码>命令,但我只是希望这些图标在中间出现。似乎没有简单的解决办法?以下是我的工作内容:Android 仅在按钮上水平和垂直居中放置图标(不包括文本),android,xml,Android,Xml,我在im创建的应用程序底部有3个按钮,我只是尝试使用一些android常用图标,而不是文本或两者的组合。有 ANDIO:Debug启动/顶部/底部/ ETC/命令,但我只是希望这些图标在中间出现。似乎没有简单的解决办法?以下是我的工作内容: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/too
<RelativeLayout
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"
android:background="@drawable/calm"
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=".PiktuurMain" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true" >
<Button
android:id="@+id/takepic"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@drawable/round" />
<Button
android:id="@+id/editpic"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="15dp"
android:layout_marginRight="15dp"
android:layout_weight="1"
android:background="@drawable/round" />
<Button
android:id="@+id/sharepic"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@drawable/round"
android:drawableStart="@android:drawable/ic_dialog_email" />
</LinearLayout>
</RelativeLayout>
使用:
您可以使用
图像按钮
代替按钮
。下面我向您展示页脚的布局
<LinearLayout
android:id="@+id/footer"
android:layout_width="fill_parent"
android:layout_height="56dp"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="0dp"
android:background="@drawable/trans_bg"
android:gravity="center"
android:padding="5dp" >
<LinearLayout
android:id="@+id/ib_add_ed_lay"
style="@style/Bottombar2LinearLayout" >
<ImageButton
android:id="@+id/ib_add"
android:layout_width="30dp"
android:layout_height="30dp"
android:background="@drawable/add_event_button_back" />
</LinearLayout>
<LinearLayout
android:id="@+id/ib_map_ed_lay"
style="@style/Bottombar2LinearLayout" >
<ImageButton
android:id="@+id/ib_map"
android:layout_width="30dp"
android:layout_height="30dp"
android:background="@drawable/map_button_back" />
</LinearLayout>
<LinearLayout
android:id="@+id/ib_call_cd_lay"
style="@style/Bottombar2LinearLayout" >
<ImageButton
android:id="@+id/ib_get_route"
android:layout_width="30dp"
android:layout_height="30dp"
android:background="@drawable/route_button_back" />
</LinearLayout>
</LinearLayout>
输出:您可以使用
MaterialButton
。它比其他东西更有优势。如涟漪效应、主题、图标色调、形状外观等
<com.google.android.material.button.MaterialButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:minWidth="0dp"
app:icon="@drawable/ic_baseline_sports_soccer_24"
app:iconPadding="0dp" />
<androidx.appcompat.widget.AppCompatImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_baseline_sports_soccer_24" />
此外,您应该设置android:padding=“Xdp”
以获得西装宽度。使用XML
中的CTRL+SHIFT+F
进行格式化;)最好的答案是获得一个简单的图标只材料按钮。谢谢!:)
<style name="Bottombar2LinearLayout">
<item name="android:layout_width">30dp</item>
<item name="android:layout_height">30dp</item>
<item name="android:layout_marginLeft">40dp</item>
<item name="android:layout_marginRight">40dp</item>
<item name="android:layout_marginBottom">1dp</item>
<item name="android:layout_marginTop">1dp</item>
</style>
<com.google.android.material.button.MaterialButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:minWidth="0dp"
app:icon="@drawable/ic_baseline_sports_soccer_24"
app:iconPadding="0dp" />
<androidx.appcompat.widget.AppCompatImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_baseline_sports_soccer_24" />