使用图标和文本创建自定义按钮

Ali*_*lin 6 android

我想在我的Android应用程序中创建两个新的自定义按钮.

我希望他们是这样的:

  • 左边的图标
  • 右侧的文字为按钮
  • 另一个按钮,顶部是Icon,底部是文本

所以基本上我会在我的资源中存储一个png图像,它将成为按钮的图标.我将另外的图像作为按钮背景可伸缩的9patch.我尝试了一些但结果很可怕,所以我一定做错了.

这段代码:

   <Button 
             android:layout_width="100px"
       android:layout_height="100px"
             android:drawableTop="@drawable/imgIcon"
             android:drawablePadding="2px"
             android:text="Text"
             android:background="@drawable/button_background"
             />
Run Code Online (Sandbox Code Playgroud)

后来编辑:如果我像Macarse波纹管那样建议:

<Button android:id="@+id/yourid"
       android:layout_height="wrap_content" 
       android:layout_width="wrap_content" 
       android:text="Your text here" 
       android:drawableTop="@drawable/imgdonetracks">
</Button>
Run Code Online (Sandbox Code Playgroud)

我喜欢第一张图片

如果我做了这个改变:

<Button android:id="@+id/yourid"
        android:layout_height="wrap_content" 
        android:layout_width="wrap_content" 
        android:text="Your text here" 
        android:drawableTop="@drawable/imgdonetracks"
        android:background="@drawable/button_background">
   </Button>
Run Code Online (Sandbox Code Playgroud)

一切都搞错了

查看图片http://img255.imageshack.us/i/android3.png/

thp*_*oul 9

<button android:id="@+id/yourid"
        android:layout_height="wrap_content" 
        android:layout_width="wrap_content" 
        android:text="Your text here" 
        android:drawabletop="@drawable/[image]">
</button>
Run Code Online (Sandbox Code Playgroud)

这是文档:http://developer.android.com/reference/android/widget/TextView.html#attr_android : drawableTop


Ali*_*lin 1

它看起来很丑,因为按钮布局背景有空白空间,但在 9 补丁图像中没有考虑到这一点。现在我用 9p 编辑器修复了http://developer.android.com/guide/topics/graphics/2d-graphics.html#nine-patch并且工作正常