`
01jiangwei01
  • 浏览: 540916 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

安卓课程十五 Button按钮的焦点变化

 
阅读更多
监听单击事件,键盘事件,焦点变换事件和触碰事件。
import android.os.Bundle;
import android.app.Activity;
import android.view.KeyEvent;
import android.view.Menu;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnFocusChangeListener;
import android.view.View.OnKeyListener;
import android.view.View.OnTouchListener;
import android.widget.Button;

public class MainActivity extends Activity  implements OnClickListener,OnFocusChangeListener,OnKeyListener,OnTouchListener{

	private Button btn1;
	private Button btn2;
	
	
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		btn1 = (Button) findViewById(R.id.btn1);
		btn2 = (Button) findViewById(R.id.btn2);
		
		btn1.setOnClickListener(this);
		btn1.setOnFocusChangeListener(this);
		btn1.setOnKeyListener(this) ;
		
		btn2.setOnClickListener(this);
		btn2.setOnFocusChangeListener(this);
		btn2.setOnKeyListener(this) ;
		
	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		getMenuInflater().inflate(R.menu.main, menu);
		return true;
	}

	@Override
	public boolean onKey(View v, int keyCode, KeyEvent event) {
		if(KeyEvent.ACTION_DOWN == event.getAction()){
			System.out.println("键盘按下了");
			
		}
		return false;
	}

	@Override
	public void onFocusChange(View v, boolean hasFocus) {
		// TODO Auto-generated method stub
		Button btn = (Button)v;
		if(hasFocus){
			btn.setBackgroundColor(RESULT_OK);
		}else {
			btn.setBackgroundColor(BIND_ABOVE_CLIENT);
		}
		
	}

	@Override
	public void onClick(View v) {
		 Button btn = (Button)v;
		 
		 int  width = btn.getWidth();
		// int windowWidth = getWindowManager().getDefaultDisplay().getSize(null);
		 System.out.println(width);
		
	}

	@Override
	public boolean onTouch(View v, MotionEvent event) {
	 
		if(MotionEvent.ACTION_UP == event.getAction()){
			
		}
		return false;
	}

}

监听单击事件,键盘事件,焦点变换事件和触碰事件。

分享到:
评论

相关推荐

    android按钮被选点击得到焦点失去焦点切换图片

    在Android开发中,按钮(Button)是用户界面中不可或缺的元素,它允许用户进行交互,如触发一个操作或导航到另一个页面。按钮的状态变化通常包括默认状态、被选中(按下)、获得焦点以及失去焦点等。为了提升用户...

    android获取焦点后按钮变大

    "android获取焦点后按钮变大"这个话题就是关于如何在用户点击或触摸按钮时改变其大小,使其更加突出,从而吸引用户的注意力。这个效果通常通过自定义样式、主题或者布局动画来实现。下面将详细探讨如何实现这一功能...

    Android 自定义Button按钮显示样式(正常、按下、获取焦点)

    本文将深入探讨如何自定义一个Button,使其在不同状态(正常、按下、获取焦点)下呈现出不同的显示样式。我们将通过创建一个自定义的Button类,利用XML属性和Java代码来实现这一功能。 首先,我们需要创建一个新的...

    Android ListView添加两个Button焦点获取

    Android ListView添加两个Button焦点获取 listview 放弃焦点 让Button获取焦点 很简单的一个demo 点击相应 我没弄 也很简单 焦点都给你获取了 点击都不会做 我也没办法了 百度了这么久 自己写了个 希望能帮到大家

    超炫button按钮动画效果

    本文将深入探讨如何实现“超炫button按钮动画效果”以及相关的Activity切换动画,让您的应用界面更具吸引力。 首先,让我们关注按钮动画。在Android中,我们可以使用多种方法来创建动画,如属性动画(Property ...

    Android自定义Button按钮显示样式

    Android 自定义 Button 按钮显示样式 Android 自定义 Button 按钮显示样式是指在 Android 应用程序中对 Button 控件的样式进行自定义,以满足不同的应用程序需求和用户体验。自定义 Button 按钮显示样式可以通过两...

    Android带动态效果的Button(按钮)

    在Android开发中,按钮(Button)是用户界面中不可或缺的元素,它允许用户与应用进行交互。本教程将深入探讨如何在Android中为Button添加动态效果,以提升用户体验和界面的吸引力。 首先,我们从基本的Button说起。...

    Android应用源码-Button按钮应用类源代码(3例).zip

    本资源包含三个Button按钮应用类的源代码实例,旨在帮助开发者深入理解和掌握Android中Button的使用方法。以下是关于Button按钮在Android应用中的详细知识点: 1. **创建Button** - 在XML布局文件中声明Button,...

    Android点击下载时候Button背景变化下载进度条Demo

    【Android点击下载时Button背景变化下载进度条Demo】是一个Android开发中的示例项目,它展示了如何在用户触发下载操作时,使Button的背景发生变化,并同时显示一个下载进度条。这个Demo对于开发者来说,是一个很好的...

    Android_Define_Button.rar_android_按钮 安卓

    在Android开发中,按钮(Button)是用户界面中不可或缺的元素,它允许用户与应用程序进行交互。本资源“Android_Define_Button.rar”提供了一个自定义按钮样式的示例,通过更改颜色代码,我们可以灵活地调整按钮在...

    自定义button样式,圆角按钮

    在Android布局文件中,我们通常使用`<Button>`标签来创建按钮。为了实现圆角效果,可以使用`android:background`属性设置一个带有圆角的形状资源。创建一个名为`button_rounded_corner.xml`的文件在`res/drawable`...

    Android点击改变按钮颜色的3种效果

    在Android开发中,改变按钮(Button)的颜色是常见的交互设计需求,可以提升用户操作的反馈感知。以下将详细讲解三种实现Android按钮点击后颜色变化的方法。 1. 使用selector资源(Drawable Selector) Android提供...

    Android 源码Button 经典实例

    - `android:state_focused="true"`用于设置按钮获得焦点时的效果。 6. **Button的文本属性** - `android:textColor`设置文字颜色,`android:textSize`设定字体大小,`android:textAllCaps`控制是否转换为大写。 ...

    android 具有背景图片的按钮 ImageButton的焦点事件以及事件处理

    在Android开发中,`ImageButton`是一个特殊的`Button`视图,它允许我们为按钮设置一个图像作为背景,而不是默认的文字。这个控件广泛用于UI设计,因为它提供了视觉上的多样性,可以增强用户界面的美观性。在本文中,...

    仿京东动态绘制Button按钮

    "仿京东动态绘制Button按钮"是一个项目,旨在模仿京东应用中的特色按钮,该按钮能够展示商品的颜色和尺寸等信息,并且允许布局的灵活调整。我们将探讨这个项目的几个关键知识点。 1. **自定义View**: 首先,要实现...

    android > 按钮Button 按下效果

    总结来说,Android中的按钮按下效果可以通过设置Button的背景资源来实现,这些资源可以是`.9.png`图片或自定义的Shape Drawable。通过对不同状态的资源进行切换,可以达到理想的视觉反馈效果。同时,使用Material ...

    Button按钮效果

    通过定义不同的Drawable,Selector可以实现按钮在不同状态下的颜色、形状和图片变化,从而达到动态效果。例如,当按钮被按下时,我们可以让它改变背景色或者显示不同的图片。 接着,我们了解一下`Shape`。Shape是...

    android 点击变色字体或按钮

    <item android:drawable="@color/normal_button_color" android:state_enabled="true" android:state_focused="false" android:state_pressed="false"/> <item android:drawable="@color/pressed_button_color" ...

    Android 扇形 button

    在Android开发中,扇形(Sector)按钮是一种特殊设计的UI元素,它可以为应用程序提供独特且吸引人的交互体验。本文将深入探讨如何在Android中实现扇形按钮,并区分按钮的有背景图片区域和无背景图片区域。 首先,...

    Android listview和button点击事件冲突问题解决方法

    然而,这样处理后,虽然解决了Button获取焦点的问题,但新的问题是,点击ListView项时,Button仍会出现按下的视觉效果。这是因为即使Button没有焦点,它的`setPressed()`方法仍会被调用。 为了解决这个问题,我们...

Global site tag (gtag.js) - Google Analytics