在Android中,如何将图像放在按钮的中央而不拉伸?

时间:2016-02-03 02:03:40

标签: android image button layout

在Android布局文件中,我有一个按钮。而且我想在没有任何文字的情况下为按钮呈现图像。我遇到的问题是,图像被拉伸以覆盖整个按钮区域。我不想拉伸,而是将按钮放在按钮的中央,不会对图像造成任何扭曲。

<Button
    android:layout_width="38dp"
    android:layout_height="match_parent"
    android:background="@drawable/icon_more"
    android:id="@+id/button"
    android:layout_alignParentTop="true"
    android:layout_alignParentEnd="true" />

现在,它看起来像这样:

enter image description here

它是水平伸展的,这不是我想要的。

3 个答案:

答案 0 :(得分:1)

Using ImageButton is another choice for you. You can try:

    <ImageButton
        android:layout_width="38dp"
        android:layout_height="match_parent"
        android:src="@drawable/icon_more"
        android:scaleType="centerInside"
        />

Flexibly combining attributes layout_width, layout_height and scaleType helps you a good UI

答案 1 :(得分:0)

使用此:

   Dim oFSO
  Set oFSO = CreateObject("Scripting.FileSystemObject")
  sScriptDir =     oFSO.GetParentFolderName(WScript.ScriptFullName)               
   Set xlBook = xlApp.Workbooks.Open( sScriptDir &  "\GeocodingStart.xlsm")     

答案 2 :(得分:0)

在某些主题中,有一些默认属性(minWidthminHeight ...)和Button。这样会导致你的背景变得紧张。我建议您使用ImageView之类的@ShamasS评论,或者如果您想使用Button,请尝试在xml中添加这些属性:

<Button
...
android:minHeight="0dp"
android:minWidth="0dp"/>

或以编程方式使用setMinHeight(0)setMinWidth(0)

希望有所帮助!