方法一
1.放在drawable下的selector.xml文件
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_pressed="true" android:drawable="@drawable/temp1" /> <item android:state_pressed="false" android:state_focused="false" android:drawable="@drawable/temp2" /> <item android:state_focused="true" android:drawable="@drawable/temp3" /> <item android:state_focused="false" android:drawable="@drawable/temp4" /> </selector>
2.布局文件main.xml
<?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="@string/hello" /> <Button android:drawableTop="@drawable/shouru" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/button" android:background="@drawable/selector"/> </LinearLayout>
3.只是为了测试,所以效果不是很好,Button部分状态效果图如下:
①初始化的时候默认显示的按钮效果:
②点击后释放显示的效果
③点击不放时的效果
方法二
1.布局文件main.xml
<?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="@string/hello" /> <Button android:id="@+id/button" android:drawableTop="@drawable/shouru" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/button" android:background="@drawable/temp4"/> </LinearLayout>
2.主要的java代码,实现点击效果:
Button button = (Button) this.findViewById(R.id.button); button.setOnTouchListener(new Button.OnTouchListener(){ @Override public boolean onTouch(View v, MotionEvent event) { if(event.getAction() == MotionEvent.ACTION_DOWN){ v.setBackgroundResource(R.drawable.temp1); Log.i("TestAndroid Button", "MotionEvent.ACTION_DOWN"); } else if(event.getAction() == MotionEvent.ACTION_UP){ v.setBackgroundResource(R.drawable.temp2); Log.i("TestAndroid Button", "MotionEvent.ACTION_UP"); } return false; } });
相关推荐
本篇将深入探讨如何在Android中实现自定义Button的效果,以及涉及到的相关知识点。 1. **自定义样式与主题** Android支持通过XML来定义按钮的样式。在`res/values/styles.xml`文件中,可以创建一个新样式,并指定...
在Android开发中,自定义组件是提升应用独特性和用户体验的关键技术之一。本示例主要讲解如何使用自定义的Button和TabHost来实现页面间的切换,从而创建一个具有个性化标签导航功能的应用。 首先,我们来看看...
本文将深入探讨如何在Android中自定义各种风格的Button。 首先,我们可以通过修改Button的背景来改变其颜色。Android提供了多种方式来实现这一目标,例如使用颜色资源、颜色选择器(ColorStateList)或者渐变色。在...
android studio 自定义button边框,角度,渐变颜色按下时改变样式, 以及基础动画,为image view添加旋转,下移,渐变等样式,使用timer handler button进行控制。
在Android开发中,自定义View和自定义Button是提升应用界面独特性和交互体验的重要手段。本Demo主要展示了如何通过自定义View和自定义Button来实现特定的视觉效果和交互功能,比如Button在被点击时变换背景。下面...
在Android应用开发中,有时需要实现自定义键盘以满足特定输入需求,比如金融应用中的数字键盘或聊天应用中的字母键盘。本篇文章将深入探讨如何在Android中创建自定义的数字键盘和字母键盘。 首先,我们需要了解...
本文将深入探讨"Android-Android波浪按钮支持多种效果自定义"这一主题,包括它的实现原理、功能特性以及如何在项目中进行自定义配置。 1. **波浪按钮概念** 波浪按钮是一种特殊的Android按钮控件,它在用户点击时...
- 在Java或Kotlin代码中,可以通过设置`android:background`属性来引用`wp_button.xml`文件,使按钮应用自定义样式。 - 或者在XML布局文件中直接将`wp_button.xml`作为`Button`组件的背景。 5. **进一步优化** -...
本教程将深入探讨如何在Android中自定义RadioButton,使其满足特定的设计需求。 一、RadioButton基础 RadioButton是Android的 android.widget.RadioGroup 类中的一个子类,它在视觉上表现为一个小圆圈,未被选中时...
Android 自定义 Button 按钮显示样式是指在 Android 应用程序中对 Button 控件的样式进行自定义,以满足不同的应用程序需求和用户体验。自定义 Button 按钮显示样式可以通过两种方式实现:一种是使用图片,另一种是...
在Android开发中,自定义控件是提升应用界面独特性和用户体验的重要手段。本文将深入探讨如何自定义一个Button,使其在不同状态(正常、按下、获取焦点)下呈现出不同的显示样式。我们将通过创建一个自定义的Button...
android 自定义button 支持颜色,圆角,可以简单实现button颜色,圆角
"Android 自定义仿Button按下"这一主题,旨在教你如何模仿标准Button的按下和抬起效果,并在此基础上添加动画,使得用户在触摸屏幕时能感受到更丰富的交互体验。下面我们将详细探讨这个过程中的关键知识点。 首先,...
在项目"notification-Android带按钮自定义通知栏"中,开发者可以找到一个完整的示例,展示如何创建、配置和显示这种自定义通知。这将有助于理解和实践如何在Android应用中实现交互式通知,提升用户体验。 总结来说...
自定义Android View需要继承`android.view.View`或其子类(如`Button`),然后重写必要的方法,如`onDraw()`用于绘制视图,`onMeasure()`用于确定视图大小,以及`onTouchEvent()`处理触摸事件。 2. **XML布局文件...
在Android开发中,自定义控件是提升应用界面独特性和用户体验的重要手段。本文将深入探讨如何根据给定的标题和描述,实现一个自定义的Button控件,它将继承系统提供的Button类,并添加新的功能或视觉效果。我们将...
本Demo旨在展示如何在Android应用中实现Button的长按效果。 首先,我们需要在布局XML文件中定义Button,并为其设置相应的属性。例如,我们可以在`activity_main.xml`文件中创建一个Button: ```xml <Button ...
在Android开发中,自定义View和自定义Button是提升应用界面独特性和功能扩展性的重要手段。自定义View允许开发者根据需求创建独特的用户界面组件,而自定义Button则是在此基础上更进一步,专注于按钮这一常见的交互...
### Android中的自定义权限详解与实现 #### 一、引言 在Android系统中,为了保护用户隐私和数据安全,应用程序被赋予了基于权限的安全模型。Android预定义了一系列权限,如访问联系人、发送短信等,但同时也允许...
在Android开发中,自定义颜色值是一个常见的需求,这使得开发者可以更加灵活地控制应用程序的视觉样式。在Android中,颜色通常通过十六进制代码表示,例如`#ffffff`代表纯白色。为了方便开发,我们可以创建一个XML...