很简单,自己保存着用。就贴出代码:
package archie.android.activity;
import android.app.Activity;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.MotionEvent;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
public class ActivityEvent extends Activity {
private Button ok;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ok=(Button) findViewById(R.id.myButton);
ok.setText(R.string.ok);
ok.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View v) {
DisplayToast("点击了OK按钮");
}
});
}
/*键按下事件*/
public boolean onKeyDown(int keyCode,KeyEvent event){
switch(keyCode){
case KeyEvent.KEYCODE_DPAD_CENTER:
DisplayToast("按下:中键");
break;
case KeyEvent.KEYCODE_DPAD_UP:
DisplayToast("按下:上方向键");
break;
case KeyEvent.KEYCODE_DPAD_DOWN:
DisplayToast("按下:下方向键");
break;
case KeyEvent.KEYCODE_DPAD_LEFT:
DisplayToast("按下:左方向键");
break;
case KeyEvent.KEYCODE_DPAD_RIGHT:
DisplayToast("按下:右方向键");
break;
}
return super.onKeyDown(keyCode, event);
}
/*释放按键事件*/
public boolean onKeyUp(int keyCode,KeyEvent event){
switch(keyCode){
case KeyEvent.KEYCODE_DPAD_CENTER:
DisplayToast("释放:中键");
break;
case KeyEvent.KEYCODE_DPAD_UP:
DisplayToast("释放:上方向键");
break;
case KeyEvent.KEYCODE_DPAD_DOWN:
DisplayToast("释放:下方向键");
break;
case KeyEvent.KEYCODE_DPAD_LEFT:
DisplayToast("释放:左方向键");
break;
case KeyEvent.KEYCODE_DPAD_RIGHT:
DisplayToast("释放:右方向键");
break;
}
return super.onKeyUp(keyCode, event);
}
/*连击事件*/
public boolean onKeyMultiple(int keyCode,int repeatCount,KeyEvent event){
return super.onKeyMultiple(keyCode, repeatCount, event);
}
/*触笔事件*/
public boolean onTouchEvent(MotionEvent event){
int iAction=event.getAction();
if(iAction==MotionEvent.ACTION_CANCEL||iAction==MotionEvent.ACTION_DOWN||
iAction==MotionEvent.ACTION_MOVE){
return false;
}
//
int x=(int)event.getX();
int y=(int) event.getY();
DisplayToast("触笔点击坐标:("+Integer.toString(x)+","+Integer.toString(y)+")");
return super.onTouchEvent(event);
}
private void DisplayToast(String str) {
Toast.makeText(this, str, Toast.LENGTH_SHORT).show();
}
}
分享到:
相关推荐
总结,Android键盘事件处理是开发者必须掌握的基本技能之一。理解软键盘和硬件键盘事件的区别,学会使用TextWatcher和KeyListener,以及如何控制软键盘的显示与隐藏,将有助于构建更加用户友好的Android应用程序。...
我们在android手机上面有时候会遇到监听手机软键盘按键的时候,例如:我们在浏览器输入url完毕后可以点击软键盘右下角的“GO”按键加载url页面;在点击搜索框的时候,点击右下角的search符号键可以进行搜索;或者在...
本示例“Android自定义键盘之中文键盘demo”旨在教你如何为Android应用创建一个功能完备的中文输入键盘。下面将详细介绍这个过程中的关键知识点。 1. **Android InputMethodService(IMS)**: 自定义键盘的核心是...
当用户在EditText等输入框中点击时,系统会自动弹出软键盘。然而,Android SDK并没有提供直接的方法来检测软键盘的显示和隐藏。因此,我们需要通过一些间接的方式来实现这一目标。 一种常见的方法是通过测量...
首先,我们需要了解Android键盘的基本原理。Android系统提供了一种叫做InputMethodService的服务,它允许开发者创建自己的输入法。自定义键盘实际上就是实现这个服务并配置相应的布局文件。下面我们将分步骤介绍如何...
在对应的Java或Kotlin类中,为这些按钮添加点击事件监听器,处理输入和切换键盘的逻辑。例如,当用户点击“0”按钮时,将字符“0”添加到输入框;点击“完成”按钮则关闭键盘。 `alphabet_keypad.xml`类似,但包含...
页面实现完成后发现U3D 的inputfield拉起android 软键盘会先拉起一个编辑框,点击编辑框才会拉起软键盘,比平时用的应用多一次点击,作为强迫症肯定是不乐意看到这个问题的,网上查了些资料,关于这个问题的很少,...
- 创建自定义键盘类,继承`KeyboardView`,加载布局,并实现点击事件监听。 - 在需要使用自定义键盘的Activity或Fragment中添加`KeyboardView`,并设置键盘类型。 - 根据不同的键盘类型,编写相应的校验逻辑。 - 在...
在Android平台上,开发一个拨号键盘功能涉及到许多关键知识点,这些知识点涵盖了用户界面设计、事件处理、通信服务接口以及权限管理等多个方面。以下是对这些关键知识点的详细解释: 1. **用户界面(UI)设计**:...
在Android开发中,有时我们可能需要在软键盘上添加自定义功能,比如一个搜索按钮或者一个额外的操作选项。这个需求通常出现在输入框交互较多的应用场景,例如聊天应用、搜索引擎等。下面将详细介绍如何在Android的软...
总之,"android 纯自定义数字键盘输入"项目是一个实用的学习资源,它涵盖了Android自定义View的开发、触摸事件处理、界面布局设计等多个知识点。通过研究这个`KeyDemo`,开发者不仅可以学会如何创建自定义键盘,还能...
接下来,我们需要在主活动(Activity)中加载这个自定义键盘布局,并设置按钮的点击事件。在`onCreate`方法中,找到布局中的所有按钮,并为它们设置监听器: ```java public class MainActivity extends ...
Android 键盘和鼠标事件详解 Android 事件机制是现代用户...Android 键盘和鼠标事件是 Android 中最重要的事件类型之一。通过对触摸屏事件和按键事件的处理,可以实现复杂的用户交互逻辑,提高应用程序的用户体验。
关于"android键盘",在Android系统中,原生键盘是通过InputMethodService实现的,它是一个服务,可以接管设备的输入方法。然而,对于简单的自定义键盘需求,我们并不需要创建整个服务,只需在应用层处理即可。这样做...
在用户点击EditText控件时,系统会自动弹出键盘,而当用户点击屏幕其他区域或按下返回键时,键盘通常会收起。我们可以监听这些事件来判断键盘的状态,但更准确的方法是通过测量布局的高度变化。当输入法键盘弹出时,...
在Android开发中,用户在输入框(EditText)中点击时,系统会自动弹出软键盘。然而,这种行为有时会导致一些界面布局问题,尤其是当应用处于全屏模式时,软键盘的出现可能会将下方的布局内容推至屏幕之外,使得用户...
本文将深入探讨Android键盘的相关知识点,包括系统键盘、自定义键盘以及如何通过`KeyboardDemo`这样的示例项目进行实践。 一、系统键盘 1. Android系统内置了软键盘:当用户在EditText等输入控件上点击时,系统会...
在Android开发中,自定义键盘是一项常见的需求,它允许用户在特定场景下提供更个性化的输入体验。本文将深入探讨自定义键盘的工作原理,并通过代码示例帮助你理解和实现这一功能。 首先,我们需要理解Android系统...
同样,也可以通过自定义键盘实现,定义一个包含数字和字母的键盘布局,处理键盘点击事件,实现输入功能。 四、自定义键盘实现 自定义键盘涉及以下几个关键步骤: 1. 创建键盘布局:使用XML文件定义键盘的外观,包括...
在Android开发中,有时我们需要为特定应用场景自定义键盘,例如数字键盘用于输入电话号码或密码键盘用于保护敏感信息。这个压缩包"安卓键盘输入相关-android自定义键盘数字键盘密码键盘全部支持.rar"提供了相关的...