- 浏览: 85703 次
- 性别:
- 来自: 成都
最新评论
原址:http://ssd910.blog.163.com/blog/static/23876797201021610282142/
Button 有按下效果
[功能]
让Button 有按下效果 更有视觉效果
[代码]
1. 先准备2张*.png 一张供默认使用 另一张供按下使用 本例为:
Java代码
- play.png
- play_down.png
play.pngplay_down.png
2. 根据各种状态 定制化所显示的 *.png 命名为: myselection.xml
Java代码
- <?xml version="1.0" encoding="utf-8"?>
- <selector xmlns:android="http://schemas.android.com/apk/res/android">
- <item
- android:state_pressed="false"
- android:drawable="@drawable/play" />
- <item
- android:state_pressed="true"
- android:drawable="@drawable/play_down" />
- <item
- android:drawable="@drawable/play" />
- </selector>
<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_pressed="false" android:drawable="@drawable/play" /> <item android:state_pressed="true" android:drawable="@drawable/play_down" /> <item android:drawable="@drawable/play" /></selector>
3. 在 main.xml 布局中 添加Button 元件 并 设置 使用 myselection.xml
Java代码
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:orientation="vertical"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- >
- <TextView
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:text="Button Style!"
- />
- <ImageButton
- android:id="@+id/playorpause"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:src="@xml/myselection"
- android:background="#00000000" />
- </LinearLayout>
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" ><TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Button Style!" /><ImageButton android:id="@+id/playorpause" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@xml/myselection" android:background="#00000000" /></LinearLayout>
4. 大家可以自己看看效果 因为不好截图
其实 除了上面的方法 还有一个方法 为:
1. 在 maun.xml 中添加 ImageButton 且不设置使用的*.png
Java代码
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:orientation="vertical"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- >
- <ImageButton
- android:id="@+id/button"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- />
- </LinearLayout>
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" ><ImageButton android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" /></LinearLayout>
2. 在该ImageButton上设置监听器 并根据其状态使用对应的资源 但是必须要设置默认资源
Java代码
- ImageButton btn = (ImageButton) findViewById(R.id.button);
- //to set its default *.png
- btn.setBackgroundResource(R.drawable.play);
- btn.setOnTouchListener(new ImageButton.OnTouchListener(){
- @Override
- public boolean onTouch(View arg0, MotionEvent arg1) {
- // TODO Auto-generated method stub
- if(arg1.getAction() == MotionEvent.ACTION_DOWN){
- arg0.setBackgroundResource(R.drawable.play_down);
- }
- else if(arg1.getAction() == MotionEvent.ACTION_UP){
- arg0.setBackgroundResource(R.drawable.play);
- }
- return false;
- }
- });
ImageButton btn = (ImageButton) findViewById(R.id.button); //to set its default *.png btn.setBackgroundResource(R.drawable.play); btn.setOnTouchListener(new ImageButton.OnTouchListener(){ @Override public boolean onTouch(View arg0, MotionEvent arg1) { // TODO Auto-generated method stub if(arg1.getAction() == MotionEvent.ACTION_DOWN){ arg0.setBackgroundResource(R.drawable.play_down); } else if(arg1.getAction() == MotionEvent.ACTION_UP){ arg0.setBackgroundResource(R.drawable.play); } return false; } });
具体哪个方法更好 应该根据自己的场合:
1. 只有一个Button 推荐使用第一个方法
2. 有几个Button 推荐使用第二个 统一定义 然后根据指定的id 来使用目标*.png
发表评论
-
转 android背景选择器selector用法汇总
2011-04-27 15:23 1352原址:http://blog.sina.com.cn/s/bl ... -
(转)编写Android自定义按钮
2011-04-27 11:07 1214原址:http://marshal.easymorse.com ... -
(转)消息机制细谈(message handler looper MessageQueue )
2011-04-12 11:20 1061在handler的简单用 ... -
解决:sqlite数据库含有\n的值或者sax解析xml有\n的值付给TextView,显示却不会换行
2011-03-17 23:00 2949遇到个问题,网上也有人问 从sqlite数据库取含有\n的值 ... -
资料分享 android api dev guid中文(Android开发指南中文版.doc)
2011-03-11 14:12 1446资料分享 android api dev guid中文 ... -
apk反编译问题总结(转)
2011-03-09 15:01 2774http://www.eoeandroid.com/thre ... -
PendingIntent和Intent的区别 转
2011-03-04 14:35 1240Notification notification ... -
转:动态添加/删除spinner菜单--ArrlayList与Widget依赖性
2011-02-24 14:28 1757package irdc.ex04_09; import a ... -
Dialog 2种显示方式
2011-02-23 17:35 1342建议用onCreateDialog(int)和 show ... -
【转】 Array ,Simple ,SimpleCursor Adapter 区别
2011-02-12 16:01 1830原址:http://www.eoeandroid.com ... -
转 【通知 Toast详细用法(显示view)】 【android Toast大全(五种情形)建立属于你自己的Toast】
2011-02-11 10:36 3057原文地址: http://www.pocketdigi. ... -
(转 Android UI学习 - Menu)
2011-02-09 14:19 1373标签:Android menu 原创作品,允许转载,转载时 ...
相关推荐
总的来说,自定义Button效果涵盖了Android UI设计的多个方面,包括样式、Drawable、自定义View、动画、属性、触摸反馈等。通过熟练掌握这些技术,开发者能够创造出极具吸引力且用户体验优秀的Android应用。
然而,系统默认的Button样式可能无法满足所有设计需求,因此,开发者常常需要自定义Button的各种风格,包括颜色、形状、边框、文字样式等。本文将深入探讨如何在Android中自定义各种风格的Button。 首先,我们可以...
在Android开发中,Path Button是一种独特且富有创意的UI组件,它允许开发者通过自定义的SVG路径来设计按钮的形状,从而实现各种独特的视觉效果。Path Button的效果通常比传统的矩形或圆形按钮更加吸引人,可以提升...
在Android开发中,Button控件是用户界面中最基础也是最重要的元素之一,它允许用户执行特定的操作或触发事件。本文将通过“Android 源码Button 经典实例”这一主题,深入探讨Button的使用方法、源码分析以及实战案例...
总之,"Android 超炫的Path Button效果源码"是一个极好的学习资源,对于想要提升Android UI设计能力的开发者来说,能够帮助他们掌握自定义视图和动画技巧,从而在项目中创造出更多独特且引人入胜的交互体验。...
本项目"安卓Android源码——拖动Button显示效果.zip"聚焦于如何通过编程技术让Button控件在用户的手势操作下产生独特的视觉反馈。在深入探讨这个主题之前,我们需要了解Android开发的基本知识,包括Activity、布局...
在Android应用开发中,用户界面的设计是至关重要的,而按钮(Button)作为用户与应用交互的主要元素之一,其样式和功能的定制化需求尤为突出。"一个有单击效果的圆button"项目正是针对这种需求提供的一种解决方案,...
"android 超炫的Path Button效果源码"就是这样一个示例,它展示了一种创新的按钮设计,通过Path动画使得按钮在用户交互时呈现出动态、流畅的效果。 Path Button的核心概念是利用Android的矢量图形库,如SVG...
在Android应用开发中,有时为了追求更加个性化的用户界面设计,开发者可能会遇到需要自定义Button样式的需求,例如让一个Button的一侧保持直角,而另一侧则呈现圆角效果。本文将详细介绍如何通过自定义Button的XML...
这份"Android 超炫的Path Button效果源码.zip"提供了实现这种效果的完整代码,帮助开发者学习和应用到自己的项目中。 Path Button的核心原理在于利用Android的Canvas和Path类来绘制图形。Canvas是Android提供的画布...
在Android开发中,实现按钮(Button)的拖动显示效果是一项常见的交互设计需求。这个实例主要探讨如何在Android应用中创建一个可以被用户拖动的Button,并在拖动过程中展示特定的效果。首先,我们需要理解Android的...
在Android开发中,按钮(Button)是用户界面中不可或缺的元素,用于响应用户的点击操作。在某些场景下,我们可能需要创建一个...通过这些步骤,你就可以为你的应用创建一个功能完备且视觉效果良好的Image Button了。
在Android开发中,自定义控件是提升应用...通过这种方式,我们可以根据项目需求定制出符合设计风格的按钮,提高应用的整体体验。记得在使用自定义组件时,保持代码的可维护性和复用性,这样可以方便后续的修改和扩展。
总结起来,通过使用LinearLayout和单独的ImageView及TextView,我们可以实现一个功能和视觉效果与Button类似但更灵活的组件。这种方法允许我们在不自定义控件的情况下,轻松地调整图标和文本的位置、大小以及添加...
本教程将详细介绍如何在Android中实现`Button`的特殊效果,特别是利用`shape`来改变按钮的外观。 首先,`shape`是Android图形绘制的一种XML资源,它可以用来定义不同类型的图形,如矩形、圆形、椭圆等,并能设置...
在设计用户交互时,为了提供良好的用户体验,我们通常需要使按钮在不同状态下呈现出不同的视觉效果,比如按下状态、默认状态和不可点击状态。这篇内容将详细讲解如何实现Android Button的颜色变化以及按钮状态变化。...
"Android 超炫的Path Button效果源码"就是一个专注于按钮(Button)设计的项目,它通过自定义视图(View)和动画技术,实现了独特的Path Button效果。这种效果通常表现为按钮形状的动态变化,如线条绘制、颜色过渡等...
从Android 5.0 (Lollipop) 开始,系统默认为Button添加了阴影效果,以提供更好的视觉层次感。然而,根据不同的设计需求,可能需要去除这个阴影效果。本文将介绍一种不同于常见解决方案的去除Button阴影的方法。 ...
总之,实现“android button在底部的多个view切换”涉及到对Button、Fragment或Activity的理解和使用,以及事件监听、状态保存和动画效果的处理。通过这个实例,开发者可以学习到如何构建一个交互性强、用户体验好的...
"android RotateButton 旋转圆环"是一个自定义按钮控件,专为录音功能设计,它在用户触发录音时显示一个旋转的圆环动画,点击后按钮转换为停止按钮,并继续展示旋转效果,直至录音结束。这个控件的实现涉及到多个...