2014-10-10 44 views
1

我通过在gradient.xml文件中指定样式来制作玻璃状按钮,但我没有收到任何输出,而且我正在使用此样式应用于所有按钮...我是新手请大家帮忙。这里是我的代码在Android中制作玻璃状按钮

gradient.xml

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

    <item android:state_focused="false"> 
    <shape xmlns:android="http://schemas.android.com/apk/res/android" > 
    <gradient 
     android:startColor="#2F000000" 
     android:endColor="#2fDEDEDE" 
     android:angle="270" /> 
    <!-- <stroke 
     android:width="1dp" 
     android:color="#bb00ff00" /> --> 
    <corners 
     android:radius="3dp" /> 
    <padding 
     android:left="10dp" 
     android:top="10dp" 
     android:right="10dp" 
     android:bottom="10dp" /> 
    </shape> 
</item> 
<item android:state_pressed="true" > 
    <shape> 
    <gradient 
     android:startColor="#2F000000" 
     android:endColor="#2fDEDEDE" 
     android:angle="270" /> 
    <!-- <stroke 
     android:width="1dp" 
     android:color="#bb00ff00" /> --> 
    <corners 
     android:radius="3dp" /> 
    <padding 
     android:left="10dp" 
     android:top="10dp" android:right="10dp" 
     android:bottom="10dp" /> 
    </shape> 
</item> 
<item> 
<shape> 
    <gradient 
     android:startColor="#2F000000" 
     android:endColor="#2fDEDEDE" 
     android:angle="180" /> 
     <!-- <gradient 
     android:startColor="@color/cream_dark" 
     android:endColor="@color/cream" 
     android:angle="270"/> --> 

    <!-- <stroke 
     android:width="1dp" 
     android:color="#ffffffff" /> --> 
    <corners 
     android:bottomRightRadius="3dp" 
     android:bottomLeftRadius="3dp" 
     android:topLeftRadius="3dp" 
     android:topRightRadius="3dp"/> 
    <padding 
     android:left="10dp" 
     android:top="10dp" 
     android:right="10dp" 
     android:bottom="10dp" /> 
</shape> 

+0

背景:@null – 2014-10-10 04:53:17

+0

发表您的布局代码按钮。 – AndyN 2014-10-10 04:54:48

+0

<按钮 机器人:ID = “@ + ID/buttonPrescription” 机器人:layout_width = “FILL_PARENT” 机器人:layout_height = “100dp” 机器人:layout_weight = “0.51” 机器人:背景= “@绘制/梯度” android:textClick =“#FFFFFF” android:textSize =“40sp”/> – Ravi 2014-10-10 05:00:03

回答

1

如果你希望这样的事情

enter image description here

然后找到下面的代码...

glass.xml在绘制文件夹中。

<item android:state_focused="false"><shape> 
     <gradient android:angle="270" android:endColor="#2fDEDEDE" android:startColor="#2F000000" /> 

     <corners android:radius="3dp" /> 

     <padding android:bottom="10dp" android:left="10dp" android:right="10dp" android:top="10dp" /> 
    </shape></item> 
<item android:state_pressed="true"><shape> 
     <gradient android:angle="270" android:endColor="#2fDEDEDE" android:startColor="#2F000000" /> 

     <corners android:radius="3dp" /> 

     <padding android:bottom="10dp" android:left="10dp" android:right="10dp" android:top="10dp" /> 
    </shape></item> 
<item><shape> 
     <gradient android:angle="180" android:endColor="#2fDEDEDE" android:startColor="#2F000000" /> 

     <corners android:bottomLeftRadius="3dp" android:bottomRightRadius="3dp" android:topLeftRadius="3dp" android:topRightRadius="3dp" /> 

     <padding android:bottom="10dp" android:left="10dp" android:right="10dp" android:top="10dp" /> 
    </shape></item> 

布局文件

<Button 
    android:id="@+id/text1" 
    android:layout_width="fill_parent" 
    android:layout_height="60dp" 
    android:layout_marginLeft="50dp" 
    android:layout_marginRight="50dp" 
    android:layout_marginTop="200dp" 
    android:background="@drawable/glass" 
    android:gravity="center" 
    android:text="Trail" 
    android:textColor="@android:color/holo_blue_light" 
    android:textSize="15dp" /> 

希望它可以帮助你....

1

制作一个单独的.xml(例如, xyz.xml)文件绘制并粘贴您的渐变代码。 然后给后台的按钮,机器人:背景= “@绘制/ XYZ”

例子:

<Button 
     android:id="@+id/button1" 
     android:layout_width="wrap_content"  
     android:layout_height="wrap_content" 
     android:text="Mirror Button" 
     android:textColor="#000000" 
     android:textSize="20dp" 
     android:background="@drawable/xyz" 
     android:gravity="center" />