`
djun100
  • 浏览: 165744 次
  • 性别: Icon_minigender_1
  • 来自: 大连
文章分类
社区版块
存档分类
最新评论

UI效果(2): shape

 
阅读更多

android中的控件不是很多,布局也很少。但是这些东西很灵活,所以想设计好的界面还是需要一定的功底的。

本篇博客,您可以了解到:

<1> 自定义 Toast

<2> Button特殊效果

在sdk的api中,相信你可以找到名为Shape Drawable的这样一篇文章,位置:


如果,你想更加理解掌握这篇博客,建议好好地、仔细地看看这篇Shape Drawable文章。

秀一下效果图,呵呵!

启动应用时候,第一次出现效果:


让该Button获得焦点,效果:


还有,就是按下Button会改变其颜色(红色)并弹出Toast:



如果,你是一个细心的人就会发现Toast与以往显示的位置不一样,呵呵。代码如下:

  1. findViewById(R.id.btn_change).setOnClickListener(newOnClickListener(){
  2. @Override
  3. publicvoidonClick(Viewv){
  4. Toasttoast=Toast.makeText(DroidButtonActivity.this,"changed",Toast.LENGTH_LONG);
  5. toast.setGravity(Gravity.CENTER,0,0);
  6. toast.show();
  7. }
  8. });
这里面实现Button特殊效果需要selector,一个很cool的xml文件,在/res/drawable下面:


那么,看看该xml文件内容吧!?

  1. <?xmlversion="1.0"encoding="utf-8"?>
  2. <selectorxmlns:android="http://schemas.android.com/apk/res/android">
  3. <itemandroid:state_pressed="true">
  4. <shape>
  5. <gradientandroid:startColor="#bb0000"android:endColor="#cc0000"
  6. android:angle="270"/>
  7. <strokeandroid:width="3dp"android:color="#aa0000"/>
  8. <cornersandroid:radius="2dp"/>
  9. <paddingandroid:left="10dp"android:top="10dp"
  10. android:right="10dp"android:bottom="10dp"/>
  11. </shape>
  12. </item>
  13. <itemandroid:state_focused="true">
  14. <shape>
  15. <gradientandroid:startColor="#00aa00"android:endColor="#00bb00"
  16. android:angle="270"/>
  17. <strokeandroid:width="2dp"android:color="#00cc00"/>
  18. <cornersandroid:radius="2dp"/>
  19. <paddingandroid:left="10dp"android:top="10dp"
  20. android:right="10dp"android:bottom="10dp"/>
  21. </shape>
  22. </item>
  23. <item>
  24. <shape>
  25. <gradientandroid:startColor="#0000bb"android:endColor="#0000cc"
  26. android:angle="270"/>
  27. <strokeandroid:width="2dp"android:color="#0000aa"/>
  28. <cornersandroid:radius="2dp"/>
  29. <paddingandroid:left="10dp"android:top="10dp"
  30. android:right="10dp"android:bottom="10dp"/>
  31. </shape>
  32. </item>
  33. </selector>
关于各个参数的意思,看上面的sdk文档。在main.xml文件中,我们就可以来使用该xml文件喽!

  1. <?xmlversion="1.0"encoding="utf-8"?>
  2. <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
  3. android:orientation="vertical"
  4. android:layout_width="fill_parent"
  5. android:layout_height="fill_parent"
  6. >
  7. <TextView
  8. android:layout_width="fill_parent"
  9. android:layout_height="wrap_content"
  10. />
  11. <Button
  12. android:id="@+id/btn_change"
  13. android:layout_width="fill_parent"
  14. android:layout_height="wrap_content"
  15. android:layout_marginTop="10dip"
  16. android:text="change"
  17. android:background="@drawable/an_button"/>
  18. </LinearLayout>
注意:Button设置selector使用标签是background,不是src(区别于ImageButton)。

完整代码下载:http://download.csdn.net/source/3469895

转自:http://blog.csdn.net/veryitman/article/details/6633970

分享到:
评论

相关推荐

    Android 基础UI Demo小合集

    Android 基础UI Demo小合集,目录: - "练习一:霓虹灯效果" (imgeview、handler、timer) - "练习二:Drawable资源"(drawable、shape) - "练习三:图片浏览器" (imageview) - "练习四:AutoCompleteTextView" ...

    Android开发教程之shape和selector的结合使用

    shape和selector是Android UI设计中经常用到的,比如我们要自定义一个圆角Button,点击Button有些效果的变化,就要用到shape和selector。可以这样说,shape和selector在美化控件中的作用是至关重要的。 1.Shape 简介...

    Android代码-UIDemo

    动画效果集合目前包含的动画效果有: ... 2、选项伸缩动画 ... 4、基于shape的UI小工具类 具体使用请参考demo 我的csdn博客: http://blog.csdn.net/yangyong915/article/details/79012025 我的QQ:  550149620

    Android shape和selector 结合使用实例代码

    shape和selector是Android UI设计中经常用到的,比如我们要自定义一个圆角Button,点击Button有些效果的变化,就要用到shape和selector。可以这样说,shape和selector在美化控件中的作用是至关重要的。 1.Shape ...

    Android UI效果之绘图篇(一)

    最近准备整理一套关于UI效果的文章,算是对这段时间的一个总结,主要讲Android开发中的UI效果设计模块。初步分为一下几个篇幅: Android XML绘图(Shape、Layer、Selector) Android Canvas绘图(canvas、point、...

    Android使用shape绘制阴影图层阴影效果示例

    首先我们来分析一下上面UI效果,我们不难发现其实上图所示的ui效果本质上可以看成两个图层的叠加,那么有的小伙伴就要说了不就是两个图层的叠加嘛,用画笔(paint)和画布(cavns)来画就好了。但就我个人而言我觉得...

    shape2d:用于Unity3D的Shapes2D-在Unity中快速制作简单的美术资产

    您可以使用Shapes2D创建PNG精灵,原型设计,游戏卡纸,UI,效果等等。 您可以获取Shapes2D,或克隆此存储库,然后将Assets / Shapes2D复制到项目的Assets文件夹中。 在线文档位于 。 Twitter,为 。 在不一致。

    实例详解Android Selector和Shape的用法

    shape和selector是Android UI设计中经常用到的,比如我们要自定义一个圆角Button,点击Button有些效果的变化,就要用到shape和selector。可以这样说,shape和selector在美化控件中的作用是至关重要的。 1:Selector ...

    什么?你连个三色渐变圆角按钮都需要UI切图?

    shape_gradient.xml 但是,这个只能支持双色渐变,超过双色就无能为力了,所以,我们要考虑使用其它方式: /** * Create a shader that draws a linear gradient along a line. * * @param x0 The x-...

    Android实现万能自定义阴影控件实例代码

    第二种:采用shape叠加,存在后期UI效果不便优化 第三种:UI切图 第四种:自定义View 否定上面前两种方案原因分析? 第一个方案的CardView渐变色和阴影效果很难控制,只能支持线性或者环装形式渐变,这种不

    DDR2Layout指导手册

    二是线-Shape间距,同样建议采用2W原则。对于线间距,也可以在Allegro中建立一种约束条件,为所有DDR走线(XNET)分配这样的约束条件,如下图。 DDR-2W 4. 还有一种可能需要的规则,就是区域规则。Allegro中默认的...

    Android使用CardView实现圆角对话框

    前言:随着用户体验的不断的加深,良好的UI视觉效果也必不可少,以前方方正正的对话框样式在APP已不复存在,取而代之的是带有圆角效果的Dialog,之前设置对画框的圆角效果都是通过drawable/shape属性来完成,随着...

    透明与窗体的设置

    此外API Demo中提供了另一个实例,不用继承内置的Theme,可以自己完全创建一个新的style,实现透明效果,同时可以加一些其他特效,比如模糊化等,但我试了半天也没有搞定,完全复制代码,也没有出现这个效果,这个...

    炫彩界面库 v2.1.1.zip

    UI设计器 -&gt; 优化界面布局与视觉效果 UI设计器 -&gt; 增加鼠标右键菜单 UI设计器 -&gt; C 代码生成 新增接口: XEle_SetUID(); XEle_GetUID(); XShape_SetUID(); XShape_GetUID(); XLayout_SetUID(); XLayout_Get...

    详解Android用Shape制作单边框图的两种思路和坑

    开发中遇到单/多边框的UI,简单的可以自己写shape图,复杂的一般都让设计配合制作9patch图了。 今天不说需要切图的情况,只聊简单的单/多边框,主要是实现思路。 效果很简单: 就以上图为例介绍,只有上边框,边框...

    unity3d插件 技能指示效果

    giving your indicators unique designs and beautiful effects or customizing the shape at runtime, or having progress bars fill up as you use them

    Android利用RenderScript实现毛玻璃模糊效果示例

    毛玻璃效果(亦称磨砂效果),近两年在移动端的UI设计上越来越流行,下面这篇文章主要介绍了Android利用RenderScript实现毛玻璃模糊效果的相关资料,文中给出了详细的示例代码,需要的朋友可以参考学习,下面来一起...

    Swing透明切,美观啊(源码奉送)

    * UI透明就成了大家非常关注的一个话题,于是Java阵营开始了铺天盖地的讨论如何实现透明的效果, * 但是很不幸的是无论组件如何透明和变换,但是能够放置于屏幕任何位置的Window一族就是没法透明和变形,原生...

Global site tag (gtag.js) - Google Analytics