有图又真相,先上图再说。
点击效果:
设置虚线:
**[html]** [view plain](http://blog.csdn.net/lan410812571/article/details/9946991#)[copy](http://blog.csdn.net/lan410812571/article/details/9946991#)[](https://code.csdn.net/snippets/83373)[](https://code.csdn.net/snippets/83373/fork)
<div>
<embed id="ZeroClipboardMovie_1" src="http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf" type="application/x-shockwave-flash" width="18" height="18" align="middle" name="ZeroClipboardMovie_1">
</embed>
</div>
</div>
- <span class="tag"><?</span><span class="tag-name">xml</span> <span class="attribute">version</span>=<span class="attribute-value">“1.0”</span> <span class="attribute">encoding</span>=<span class="attribute-value">“utf-8”</span><span class="tag">?></span>
- <span class="tag"><</span><span class="tag-name">shape</span> <span class="attribute">xmlns:android</span>=<span class="attribute-value">“http://schemas.android.com/apk/res/android”</span>
- <span class="attribute">android:shape</span>=<span class="attribute-value">“line”</span> <span class="tag">></span>
- <span class="tag"><</span><span class="tag-name">stroke</span>
- <span class="attribute">android:dashGap</span>=<span class="attribute-value">“3dp”</span>
- <span class="attribute">android:dashWidth</span>=<span class="attribute-value">“6dp”</span>
- <span class="attribute">android:width</span>=<span class="attribute-value">“1dp”</span>
- <span class="attribute">android:color</span>=<span class="attribute-value">“#63a219”</span> <span class="tag">/></span>
- <span class="tag"><</span><span class="tag-name">size</span> <span class="attribute">android:height</span>=<span class="attribute-value">“1dp”</span> <span class="tag">/></span>
- <span class="tag"></</span><span class="tag-name">shape</span><span class="tag">></span>
其中,破折线的宽度为dashWith,破折线之间的空隙的宽度为dashGap,当dashGap=0dp时,为实线
设置圆角:
**[html]** [view plain](http://blog.csdn.net/lan410812571/article/details/9946991#)[copy](http://blog.csdn.net/lan410812571/article/details/9946991#)[](https://code.csdn.net/snippets/83373)[](https://code.csdn.net/snippets/83373/fork)
<div>
<embed id="ZeroClipboardMovie_2" src="http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf" type="application/x-shockwave-flash" width="18" height="18" align="middle" name="ZeroClipboardMovie_2">
</embed>
</div>
</div>
- <span class="tag"><?</span><span class="tag-name">xml</span> <span class="attribute">version</span>=<span class="attribute-value">“1.0”</span> <span class="attribute">encoding</span>=<span class="attribute-value">“utf-8”</span><span class="tag">?></span>
- <span class="tag"><</span><span class="tag-name">shape</span> <span class="attribute">xmlns:android</span>=<span class="attribute-value">“http://schemas.android.com/apk/res/android”</span>
- <span class="attribute">android:shape</span>=<span class="attribute-value">“rectangle”</span><span class="tag">></span>
- <span class="tag"><</span><span class="tag-name">solid</span> <span class="attribute">android:color</span>=<span class="attribute-value">“#FFFFFF”</span><span class="tag">></span><span class="tag"></</span><span class="tag-name">solid</span><span class="tag">></span>
- <span class="tag"><</span><span class="tag-name">stroke</span> <span class="attribute">android:width</span>=<span class="attribute-value">“1dp”</span> <span class="attribute">android:color</span>=<span class="attribute-value">“#63a219”</span><span class="tag">></span><span class="tag"></</span><span class="tag-name">stroke</span><span class="tag">></span>
- <span class="tag"><</span><span class="tag-name">corners</span> <span class="attribute">android:radius</span>=<span class="attribute-value">“10dp”</span> <span class="tag">/></span>
- <span class="tag"></</span><span class="tag-name">shape</span><span class="tag">></span>
设置渐变填充和四个圆角半径:
**[html]** [view plain](http://blog.csdn.net/lan410812571/article/details/9946991#)[copy](http://blog.csdn.net/lan410812571/article/details/9946991#)[](https://code.csdn.net/snippets/83373)[](https://code.csdn.net/snippets/83373/fork)
<div>
<embed id="ZeroClipboardMovie_3" src="http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf" type="application/x-shockwave-flash" width="18" height="18" align="middle" name="ZeroClipboardMovie_3">
</embed>
</div>
</div>
- <span class="tag"><</span><span class="tag-name">shape</span> <span class="attribute">xmlns:android</span>=<span class="attribute-value">“http://schemas.android.com/apk/res/android”</span>
- <span class="attribute">android:shape</span>=<span class="attribute-value">“rectangle”</span><span class="tag">></span>
- <span class="tag"><</span><span class="tag-name">corners</span>
- <span class="attribute">android:topLeftRadius</span>=<span class="attribute-value">“0dp”</span>
- <span class="attribute">android:topRightRadius</span>=<span class="attribute-value">“7dp”</span>
- <span class="attribute">android:bottomLeftRadius</span>=<span class="attribute-value">“0dp”</span>
- <span class="attribute">android:bottomRightRadius</span>=<span class="attribute-value">“7dp”</span><span class="tag">/></span>
- <span class="tag"><</span><span class="tag-name">gradient</span> <span class="attribute">android:startColor</span>=<span class="attribute-value">“#9cff00”</span>
- <span class="attribute">android:endColor</span>=<span class="attribute-value">“#197600”</span>
- <span class="attribute">android:angle</span>=<span class="attribute-value">“270”</span><span class="tag">/></span>
- <span class="tag"><</span><span class="tag-name">stroke</span>
- <span class="attribute">android:width</span>=<span class="attribute-value">“1dp”</span>
- <span class="attribute">android:color</span>=<span class="attribute-value">“#63a219”</span> <span class="tag">/></span>
- <span class="tag"></</span><span class="tag-name">shape</span><span class="tag">></span>
设置渐变点击效果:
**[html]** [view plain](http://blog.csdn.net/lan410812571/article/details/9946991#)[copy](http://blog.csdn.net/lan410812571/article/details/9946991#)[](https://code.csdn.net/snippets/83373)[](https://code.csdn.net/snippets/83373/fork)
<div>
<embed id="ZeroClipboardMovie_4" src="http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf" type="application/x-shockwave-flash" width="18" height="18" align="middle" name="ZeroClipboardMovie_4">
</embed>
</div>
</div>
- <span class="tag"><</span><span class="tag-name">style</span> <span class="attribute">name</span>=<span class="attribute-value">“list_item_top”</span><span class="tag">></span>
- <span class="tag"><</span><span class="tag-name">item</span> <span class="attribute">name</span>=<span class="attribute-value">“android:clickable”</span><span class="tag">></span>true<span class="tag"></</span><span class="tag-name">item</span><span class="tag">></span>
- <span class="tag"><</span><span class="tag-name">item</span> <span class="attribute">name</span>=<span class="attribute-value">“android:focusable”</span><span class="tag">></span>true<span class="tag"></</span><span class="tag-name">item</span><span class="tag">></span>
- <span class="tag"><</span><span class="tag-name">item</span> <span class="attribute">name</span>=<span class="attribute-value">“android:paddingTop”</span><span class="tag">></span>10dip<span class="tag"></</span><span class="tag-name">item</span><span class="tag">></span>
- <span class="tag"><</span><span class="tag-name">item</span> <span class="attribute">name</span>=<span class="attribute-value">“android:paddingBottom”</span><span class="tag">></span>10dip<span class="tag"></</span><span class="tag-name">item</span><span class="tag">></span>
- <span class="tag"><</span><span class="tag-name">item</span> <span class="attribute">name</span>=<span class="attribute-value">“android:paddingLeft”</span><span class="tag">></span>10dip<span class="tag"></</span><span class="tag-name">item</span><span class="tag">></span>
- <span class="tag"><</span><span class="tag-name">item</span> <span class="attribute">name</span>=<span class="attribute-value">“android:paddingRight”</span><span class="tag">></span>10dip<span class="tag"></</span><span class="tag-name">item</span><span class="tag">></span>
- <span class="tag"><</span><span class="tag-name">item</span> <span class="attribute">name</span>=<span class="attribute-value">“android:gravity”</span><span class="tag">></span>center_vertical<span class="tag"></</span><span class="tag-name">item</span><span class="tag">></span>
- <span class="tag"><</span><span class="tag-name">item</span> <span class="attribute">name</span>=<span class="attribute-value">“android:background”</span><span class="tag">></span>@drawable/background_view_rounded_top<span class="tag"></</span><span class="tag-name">item</span><span class="tag">></span>
- <span class="tag"></</span><span class="tag-name">style</span><span class="tag">></span>
**[html]** [view plain](http://blog.csdn.net/lan410812571/article/details/9946991#)[copy](http://blog.csdn.net/lan410812571/article/details/9946991#)[](https://code.csdn.net/snippets/83373)[](https://code.csdn.net/snippets/83373/fork)
<div>
<embed id="ZeroClipboardMovie_5" src="http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf" type="application/x-shockwave-flash" width="18" height="18" align="middle" name="ZeroClipboardMovie_5">
</embed>
</div>
</div>
- <span class="tag"><?</span><span class="tag-name">xml</span> <span class="attribute">version</span>=<span class="attribute-value">“1.0”</span> <span class="attribute">encoding</span>=<span class="attribute-value">“UTF-8”</span><span class="tag">?></span>
- <span class="tag"><</span><span class="tag-name">inset</span> <span class="attribute">xmlns:android</span>=<span class="attribute-value">“http://schemas.android.com/apk/res/android”</span>
- <span class="attribute">android:insetLeft</span>=<span class="attribute-value">“1.0px”</span>
- <span class="attribute">android:insetRight</span>=<span class="attribute-value">“1.0px”</span> <span class="tag">></span>
-
- <span class="tag"><</span><span class="tag-name">selector</span><span class="tag">></span>
- <span class="tag"><</span><span class="tag-name">item</span> <span class="attribute">android:state_pressed</span>=<span class="attribute-value">“true”</span><span class="tag">></span>
- <span class="tag"><</span><span class="tag-name">shape</span><span class="tag">></span>
- <span class="tag"><</span><span class="tag-name">gradient</span>
- <span class="attribute">android:angle</span>=<span class="attribute-value">“270.0”</span>
- <span class="attribute">android:endColor</span>=<span class="attribute-value">“@color/base_end_color_pressed”</span>
- <span class="attribute">android:startColor</span>=<span class="attribute-value">“@color/base_start_color_pressed”</span> <span class="tag">/></span>
-
- <span class="tag"><</span><span class="tag-name">corners</span>
- <span class="attribute">android:bottomLeftRadius</span>=<span class="attribute-value">“0.0dip”</span>
- <span class="attribute">android:bottomRightRadius</span>=<span class="attribute-value">“0.0dip”</span>
- <span class="attribute">android:radius</span>=<span class="attribute-value">“2.0dip”</span>
- <span class="attribute">android:topLeftRadius</span>=<span class="attribute-value">“10.0dip”</span>
- <span class="attribute">android:topRightRadius</span>=<span class="attribute-value">“10.0dip”</span> <span class="tag">/></span>
-
- <span class="tag"><</span><span class="tag-name">stroke</span>
- <span class="attribute">android:width</span>=<span class="attribute-value">“1dp”</span>
- <span class="attribute">android:color</span>=<span class="attribute-value">“#eededede”</span> <span class="tag">/></span>
- <span class="tag"></</span><span class="tag-name">shape</span><span class="tag">></span>
- <span class="tag"></</span><span class="tag-name">item</span><span class="tag">></span>
- <span class="tag"><</span><span class="tag-name">item</span><span class="tag">></span>
- <span class="tag"><</span><span class="tag-name">shape</span><span class="tag">></span>
- <span class="tag"><</span><span class="tag-name">gradient</span>
- <span class="attribute">android:angle</span>=<span class="attribute-value">“270.0”</span>
- <span class="attribute">android:endColor</span>=<span class="attribute-value">“@color/base_end_color_default”</span>
- <span class="attribute">android:startColor</span>=<span class="attribute-value">“@color/base_start_color_default”</span> <span class="tag">/></span>
-
- <span class="tag"><</span><span class="tag-name">corners</span>
- <span class="attribute">android:bottomLeftRadius</span>=<span class="attribute-value">“0.0dip”</span>
- <span class="attribute">android:bottomRightRadius</span>=<span class="attribute-value">“0.0dip”</span>
- <span class="attribute">android:radius</span>=<span class="attribute-value">“2.0dip”</span>
- <span class="attribute">android:topLeftRadius</span>=<span class="attribute-value">“11.0dip”</span>
- <span class="attribute">android:topRightRadius</span>=<span class="attribute-value">“11.0dip”</span> <span class="tag">/></span>
-
- <span class="tag"><</span><span class="tag-name">stroke</span>
- <span class="attribute">android:width</span>=<span class="attribute-value">“1dp”</span>
- <span class="attribute">android:color</span>=<span class="attribute-value">“#eededede”</span> <span class="tag">/></span>
- <span class="tag"></</span><span class="tag-name">shape</span><span class="tag">></span>
- <span class="tag"></</span><span class="tag-name">item</span><span class="tag">></span>
- <span class="tag"></</span><span class="tag-name">selector</span><span class="tag">></span>
-
- <span class="tag"></</span><span class="tag-name">inset</span><span class="tag">></span>
重新补充:好久没有关注自己的博客,没有注意到各位的评论,关于4.0以上设备虚线会变实线的问题,下面几位仁兄已经给出了答案,
代码中可以添加:
**[java]** [view plain](http://blog.csdn.net/lan410812571/article/details/9946991#)[copy](http://blog.csdn.net/lan410812571/article/details/9946991#)[](https://code.csdn.net/snippets/83373)[](https://code.csdn.net/snippets/83373/fork)
<div>
<embed id="ZeroClipboardMovie_6" src="http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf" type="application/x-shockwave-flash" width="18" height="18" align="middle" name="ZeroClipboardMovie_6">
</embed>
</div>
</div>
- line.setLayerType(View.LAYER_TYPE_SOFTWARE, <span class="keyword">null</span>);
xml中可以添加:
**[html]** [view plain](http://blog.csdn.net/lan410812571/article/details/9946991#)[copy](http://blog.csdn.net/lan410812571/article/details/9946991#)[](https://code.csdn.net/snippets/83373)[](https://code.csdn.net/snippets/83373/fork)
<div>
<embed id="ZeroClipboardMovie_7" src="http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf" type="application/x-shockwave-flash" width="18" height="18" align="middle" name="ZeroClipboardMovie_7">
</embed>
</div>
</div>
- <span class="attribute">android:layerType</span>=<span class="attribute-value">“software”</span>
谢谢大家的参与!
源码免费下载地址:免费下载
http://download.csdn.net/detail/lan410812571/5925371
转自:http://blog.csdn.net/lan410812571/article/details/9946991
💬 评论