❶ android键盘怎么删除
你好,我给你最完美的解决方案:
用地瓜等市场软件任意下载一个加强版的输入法软件(简单好用些),安装完了后,进入短信,输入文字状态时,长按文本框,弹出对话框中选输入法,点选你刚刚安装的输入法。
ok,成功!
以后你再也不用忧虑此问题了,呵呵
❷ 如何监听android软键盘的隐藏和消失
原理:自定义布局的onSizeChanged()方法,在其中增加一个监听接口,当软键盘显示或隐藏使得布局尺寸发生改变,就能捕获到这个事件。
具体方法如下:
首先,在清单文件Manifest.xml中的对应的Activity标签内设置
android:windowSoftInputMode=”adjustResize”
作用是当软键盘显示或隐藏时,该Activity主窗口总是会被调整大小以便留出软键盘的空间。唯有这样才能保证布局触发onSizeChanged()方法。
然后,自定义一个布局,具体是RelativeLayout、LinearLayout或是其它的,根据实际情况而定,自定义的目的是在其onSizeChanged()方法中增加一个监听接口。这里给出一个自定义RelativeLayout布局代码:
public class CustomRelativeLayout extends RelativeLayout {
private OnSizeChangedListener listener;
public CustomRelativeLayout(Context context) {
super(context);
}
public CustomRelativeLayout(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
}
@Override
protected void onLayout(boolean changed, int l, int t, int r, int b) {
super.onLayout(changed, l, t, r, b);
}
@Override
protected void onSizeChanged(int w, int h, int oldw, int oldh) {
Log.d(TAG.CUSTOM_VIEW, “onSizeChanged”);
super.onSizeChanged(w, h, oldw, oldh);
if (listener != null) {
listener.onSizeChanged(w, h, oldw, oldh);
}
}
public void setOnSizeChangedListener(OnSizeChangedListener listener) {
this.listener = listener;
}
/** * Activity主窗口大小改变时的回调接口(本示例中,等价于软键盘显示隐藏时的回调接口) */
public interface OnSizeChangedListener {
public void onSizeChanged(int w, int h, int oldw, int oldh);
}
}
最后,在程序中使用此接口(xxx.setOnSizeChangedListener(…))即可实现监听键盘隐藏或显示事件。
❸ android 横屏状态,如何监听键盘的弹起与隐藏
android键盘监听不了,只有监听布局的状态,所以要重写布局进行监听
❹ android怎么实现后台对按键事件的监控
遥控器按键事件这个不是在Android源码的bootable下面ircon.c配置的么。比如:
{ .scancode = 0x0b, .mask = 0xaa0087ee,
.keycode = KEY_UP, .spec = IRCON_KEYCODE_NORMAL | IRCON_KEYCODE_LONGPRESS | IRCON_KEYCODE_MOUSEMD },
遥控器按键编号是“ 0x0b”,给他的响应是“KEY_UP”,就是方向键的下,这个是在源码里边配置的。你必须要有遥控器的书名数,知道遥控器每个按键的编号,然后对应给他相应的响应才可以。
但是你要操控手机,你的手机必须要能接受遥控器信号,这个也是要硬件支持的,一般的手机貌似都没有这个。
这个遥控的响应操作是驱动层做的,和应用层没什么关系,主要是驱动和硬件的支持。
❺ 安卓setOnKeyListener为什么只有在点删除或回车的时候有反应
OnKey不能监听软件键盘的事件,只能监听一些固定的删除回车,返回的按键, 如果要监听软键盘的按键,只能用自定义的输入法.
❻ android 怎样监听软键盘关闭
我们在android手机上面有时候会遇到监听手机软键盘按键的时候,例如:我们在浏览器输入url完毕后可以点击软键盘右下角的“GO”按键加载url页面;在点击搜索框的时候,点击右下角的search符号键可以进行搜索;或者在全部数据输入完毕后,点击右下角的"done"就马上进行下一步操作。
function 1:
重写Activity的dispatchKeyEvent(KeyEvent event)方法,在其中监听KeyEventKey.KEYCODE_ENTER键(右下角确定键),当此键按下的时候,隐藏输入法软键盘,设置edittext内容和加载webview内容。
@Override
public boolean dispatchKeyEvent(KeyEvent event) {
if(event.getKeyCode() == KeyEvent.KEYCODE_ENTER){
/*隐藏软键盘*/
InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
if(inputMethodManager.isActive()){
inputMethodManager.hideSoftInputFromWindow(MainActivity.this.getCurrentFocus().getWindowToken(), 0);
edittext.setText("success");
webview.loadUrl(URL);
return true;
return super.dispatchKeyEvent(event);
}
function 2:
重写dispatchKeyEvent(KeyEvent event)的方法感觉有点用牛刀的感觉,因为我们非常可能在这个方法中进行其他任务,所以我们可以使用OnKeyListener的方法来监听软键盘按键。
private OnKeyListener onKeyListener = new OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if(keyCode == KeyEvent.KEYCODE_ENTER){
/*隐藏软键盘*/
InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
if(inputMethodManager.isActive()){
inputMethodManager.hideSoftInputFromWindow(v.getApplicationWindowToken(), 0);
edittext.setText("success");
webview.loadUrl(URL);
return true;
return false;
};
edittext.setOnKeyListener(onKeyListener);
function 3:
第三种方法我认为可以帮助程序员更精确的判断右下角按键情况,以便应对更加复杂的情况。它可以帮助程序员依据当前邮件下为“GO”,“done”,“search”键的情况下做出更细分的操作。
edittext.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
/*判断是否是“GO”键*/
if(actionId == EditorInfo.IME_ACTION_GO){
/*隐藏软键盘*/
InputMethodManager imm = (InputMethodManager) v
.getContext().getSystemService(
Context.INPUT_METHOD_SERVICE);
if (imm.isActive()) {
imm.hideSoftInputFromWindow(
v.getApplicationWindowToken(), 0);
edittext.setText("success");
webview.loadUrl(URL);
return true;
return false;
});
❼ android如何监听软键盘输入法的删除键
参考下面代码:
editText.setOnKeyListener(new OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_DEL
&& event.getAction() == KeyEvent.ACTION_DOWN) {
事件
return true;
}
return false;
}
});
❽ android中怎么实现按键监听和触屏监听
按键监听代码:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
switch(keyCode){
case KeyEvent.KEYCODE_DPAD_UP:
y--;break;
case KeyEvent.KEYCODE_DPAD_LEFT:
x--;break;
case KeyEvent.KEYCODE_DPAD_DOWN:
y++;break;
case KeyEvent.KEYCODE_DPAD_RIGHT:
x++;break;
}
this.invalidate();
return true;
}
触屏监听代码:
@Override
public boolean onTouchEvent(MotionEvent event) {
// TODO Auto-generated method stub
x=(int)event.getX();
y=(int)event.getY();
this.invalidate();
return true;
}
通过鼠标可以使图形任意移动。将apk文件下载到手机上就可以实现触屏监听。
❾ Android 只是用软键盘删除一个字符(未退出软键盘),就已经触发EditText的afterTextChanged应该怎么解决
如果输入的字符有长度,断定在满足长度后再去更新adapter.notifyDataSetChanged()
设置下监听下键盘确定键,监听到后再adapter.notifyDataSetChanged()
可以起一个定时器来监听输入,满足条件再新adapter.notifyDataSetChanged()
❿ Android,写了个EditText控件,但只能添加文字,如果按软键盘的删除按钮,所有字都会清空,求大牛解答。
你看你写的监听 etMessage.setText(""); 可定直接都没了啊 建议你根据 keycode获取前一个字 再set的时候获取当前的信息 然后再减去一个
其实你根本不必要去写edittext来实现这 因为本身就可以用 根本不需要监听!