按钮视图中的阴影属性为文本提供阴影。我怎么可以给阴影一个按钮的右侧和底部边框如下图所示:
Android按钮边框阴影
回答
Here是一个blob后,我发现可以帮助。它只能在RelativeLayout中工作。与同样大小的按钮,创建一个视图组件,并立即将其放置在下面:
<Button
android:id="[email protected]\my_button"
android:layout_below="@id/some_layout_item"
android:layout_width="100dp"
android:layout_height="5dp"
>
</Button>
<View
android:layout_below="@id/my_button"
android:layout_width="100dp"
android:layout_height="5dp"
android:background="@drawable/drop_shadow"
>
</View>
创建阴影的绘制(drop_shadow.xml):
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android=”http://schemas.android.com/apk/res/android”>
<gradient
android:startColor="@color/cream_dark"
android:endColor="@color/cream"
android:angle="270"
>
</gradient>
</shape>
这只设置背景颜色。我不想改变背景颜色。我只想要右边和底边。 – MobiDev 2012-04-10 08:49:06
我认为你可以通过玩第二个视图的尺寸和边距来达到你想要的效果。 – kgiannakakis 2012-04-10 09:20:45
你想说,在按钮后面放置一个黑色视图? – MobiDev 2012-04-10 11:15:01
我的按钮的背景设置这样的
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<gradient
android:startColor="@android:color/holo_green_dark"
android:endColor="@android:color/holo_green_light"
android:angle="90">
</gradient>
<stroke
android:width="1px"
android:color="@android:color/darker_gray" />
</shape>
阴影的效果可以通过原始按钮形状下加入第二形状,改变其颜色要么黑色或灰色较暗之一来完成。但是阴影应该与按钮的形状相同。
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<solid android:color="@android:color/darker_gray"/>
</shape>
要重叠不同的项目,我们必须使用“图层列表”资源,并包括以前的形状。阴影应该出现在第一位,然后出现一些位移的原始按钮。在这个例子中,我们在按钮的底部创建阴影,偏移量为4px。
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:drawable="@drawable/shadow"/>
<item
android:drawable="@drawable/button"
android:bottom="4px"
android:right="4px"
/>
</layer-list>
现在将该按钮的背景设置为layerlist drawable。这应该做到这一点。
尝试用选择使自己的按钮9修补图像:
btn_normal.9.png:
btn_pressed.9.png:
btn_focused.9 .png:
btn_selector.xml:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true" android:drawable="@drawable/btn_focused" />
<item android:state_focused="true" android:drawable="@drawable/btn_focused" />
<item android:state_pressed="true" android:drawable="@drawable/btn_pressed" />
<item android:drawable="@drawable/btn_normal" />
</selector>
,并添加android:background="@drawable/btn_selector"
按钮的属性。
你可以试试。我在我的项目中使用它。我给Button的右下边框添加阴影。
按钮XML
<Button
android:id="@+id/buttonSignIn"
android:layout_width="fill_parent"
android:layout_height="50dp"
android:background="@drawable/button_dropshadow"
android:textColor="000000"
android:text="Sign In" />
在绘制文件添加button_dropshadow.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<layer-list>
<item android:left="5dp" android:top="5dp">
<shape>
<corners android:radius="3dp" />
<solid android:color="#000000" />
</shape>
</item>
<item android:bottom="2dp" android:right="2dp">
<shape>
<gradient android:angle="270"
android:endColor="#ffffff" android:startColor="#ffffff" />
<stroke android:width="1dp" android:color="#000000" />
<corners android:radius="4dp" />
<padding android:bottom="10dp" android:left="10dp"
android:right="10dp" android:top="10dp" />
</shape>
</item>
</layer-list>
</item>
</selector>
谢谢。
- 1. Android的阴影下边框
- 2. 边框阴影
- 3. 边框阴影
- 4. React Native Android按钮阴影
- 5. UICollectionViewCell边框/阴影
- 6. 如何从棒棒糖按钮中删除边框/阴影
- 7. 如何设置自定义按钮的阴影边框?
- 8. 将边框和阴影添加到按钮中
- 9. 斜面的阴影边框
- 10. 边框阴影问题
- 11. HTML/CSS“阴影”边框?
- 12. Css按钮框阴影转换
- 13. Android按钮边框
- 14. Android - 按钮边框
- 15. Android - 将阴影拖放到按钮
- 16. 如何为android按钮添加阴影
- 17. Android - 按钮阴影的好习惯
- 18. 按钮与衰落阴影的Android
- 19. Android工具栏按钮阴影
- 20. 在框阴影上应用边框
- 21. Javascript CSS菜单边框/框阴影
- 22. Android - MapFragment覆盖按钮阴影,就像MyLocation按钮
- 23. Android按钮边框颜色
- 24. Android按钮边框动态
- 25. Android的对话框阴影
- 26. 如何设置android按钮阴影而不是设置文字阴影
- 27. IE和边框阴影中断
- 28. Android:button onpress删除阴影/边框
- 29. 如何设置UItextview边框的阴影?
- 30. 红色边框和箱阴影问题
[已在此处询问](http:// stackoverflow。com/a/6401739/420015) [And again here](http://stackoverflow.com/a/4929068/420015) – adneal 2012-04-10 07:15:40
我已经使用过这种技巧,它只给文本带来阴影。 – MobiDev 2012-04-10 07:32:36
你为什么不为这个创建9patch图像 – hardartcore 2013-08-09 08:48:18