【问题标题】:Android: customize oval button with a imageAndroid:使用图像自定义椭圆形按钮
【发布时间】:2014-07-18 03:10:21
【问题描述】:

我想创建一个自定义按钮,该按钮具有我用 CS6 创建的圆形图像的形状。

首先要自定义一个按钮,需要定义一个可绘制元素。

如果我想根据按钮的状态使用 2 个不同的图像,我可以定义一个 .xml (customize_button.xml),如下所示:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_enabled="true" android:drawable="@drawable/btn1"   />

    <item android:drawable="@drawable/btn2" /> 

</selector>

其中 btn1 和 btn2 将是放置在可绘制文件夹中的 2 个 .png 图像。

如果我想制作一个椭圆形的按钮,我应该写的 xml 文件是这样的:

<?xml version="1.0" encoding="utf-8"?>

<shape xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="oval" >
    <gradient 
        android:startColor="#6586F0"
        android:centerColor="#D6D6D6"
        android:endColor="#4B6CD6"
        android:angle="90"/>

</shape>  

最后,如果我想将此自定义按钮添加到我的应用程序中,我只需要在布局中添加:

<Button
        android:id="@+id/BtnPrueba"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/customize_button"  

/>

我的问题:

默认情况下,按钮是方形的,所以如果我想在背景中添加一个椭圆形的图像,它周围会有一个白色的间隙。有谁知道如何将两个 .xml 文件合并为一个?

【问题讨论】:

  • 既然已经有了 png 图像,为什么还要创建一个椭圆形可绘制对象?
  • 默认情况下 png 有一个方形的白色背景形状。我不知道是否可以通过某些程序将其删除
  • 您希望您的按钮在启用/正常状态下为椭圆形,而在按下时为 btn1??
  • @Minishika 不,我想要一个像图片一样的圆形按钮。问题是,我不知道如何删除白色背景。我尝试了几件事,但我做不到。

标签: android xml image button shape


【解决方案1】:

问题是你的图片背景是白色的,所以你需要做的是

解决方案:

您可以使用 photoShop 和

使用套索剪切背景,使其透明

【讨论】:

    猜你喜欢
    • 2021-08-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-10
    • 1970-01-01
    • 1970-01-01
    • 2011-03-31
    • 1970-01-01
    相关资源
    最近更新 更多