EditBox注册返回键和点击空白返回时候输入内容不能写入游戏

EditBox返回键只隐藏虚拟键盘,并不能把输入的内容写入游戏,什么都不能做了,体验感好差。

Cocos2d-x在Android手机上运行apk时,有一堆Java文件(\runtime-src\proj.android\src\org\cocos2dx\lib)

1、

找到Cocos2dxEditBoxDialog.java文件

2、导入事件机制

import android.view.View.OnClickListener;   --复制到44行后。

3、实现OnClickListener接口

public class Cocos2dxEditBoxDialog extends Dialog implements OnClickListener{   --第 56行

4、给默认布局注册事件

layout.setOnClickListener(this);  -- 加到158行

5、这时最后应该有一个重写的onClick 方法

@Override

public void onClick(View v) {

// TODO Auto-generated method stub

Log.d("shixc==============", "onClick");

Cocos2dxHelper.setEditTextDialogResult(Cocos2dxEditBoxDialog.this.mInputEditText.getText().toString());

Cocos2dxEditBoxDialog.this.closeKeyboard();

Cocos2dxEditBoxDialog.this.dismiss();

}

6、现在安卓模拟的时候我们可以点击空白退出编辑了。但是接下来给返回键注册监听事件

290行左右 增加以下 代码

public boolean dispatchKeyEvent(KeyEvent event) {

System.out.println("shixclog================"  + event.getAction() + event.getKeyCode() + KeyEvent.KEYCODE_BACK);

if (event.getKeyCode() == KeyEvent.KEYCODE_BACK) {

Cocos2dxHelper.setEditTextDialogResult(Cocos2dxEditBoxDialog.this.mInputEditText.getText().toString());

Cocos2dxEditBoxDialog.this.closeKeyboard();

Cocos2dxEditBoxDialog.this.dismiss();

return true;

}

return super.dispatchKeyEvent(event);   //

}

时间: 2024-08-05 23:05:43

EditBox注册返回键和点击空白返回时候输入内容不能写入游戏的相关文章

app点击返回键不退出,双击返回键退出

直接代码 // 按返回键的时候返回上一页面不退出,goBack()表示返回webView的上一页面 public boolean onKeyDown(int keyCoder, KeyEvent event) { if(!webView1.canGoBack() ){ exit(); return false; } if ( keyCoder == KeyEvent.KEYCODE_BACK) { webView1.goBack(); exit(); return false; } else{

非返回键方式实现页面的返回功能

本文参考自:1.msdn这篇文章 2.8.1参考自这里(虽然是写的7.x,但是的确是参考自这里) 背景:webview和原生页面进行交互,没法直接调用返回键(因为微软的返回键里面带有参数,无法通过界面元素,捕捉到那个参数.如果采用导航到新页面的方式,则原来的webview界面信息全无). 1.winphone8.0: 方法①:把RootFrame的static去掉 public PhoneApplicationFrame RootFrame { get; private set; } 在想返回的

Android_按两次返回键退出程序和长按返回键退出程序

以上两个功能主要是参考了一下博客的: http://blog.csdn.net/chenshijun0101/article/details/7682210 http://blog.csdn.net/winlinking/article/details/6596455 方法一: 按两次返回键退出程序: Activity: public class Back2FinishAppActivity extends Activity { Exit exit = new Exit(); /** Calle

(七)android 通知对话框,并且监听了返回键,当按下返回键也会创建一个对话框

一.activity_main.java中代码   1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://schemas.android.com/tools" 3 android:layout_width="match_parent" 4 android:layout_height="matc

Android连续点击两次返回键退出应用,提示“再按一次退出应用&quot;

// 定义一个long型变量,用于判断两次点击的间隔 private long exitTime: // 实现返回键的点击事件 public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK) { exit(); // 在这里进行点击判断 return false; } return super.onKeyDown(keyCode, event); } public void

【转】Android点击空白区域,隐藏输入法软键盘

原文网址:http://www.2cto.com/kf/201505/401382.html 很多时候,我们在使用应用时,会出现输入法软键盘弹出的问题,通常情况下,我们默认会使用户点击返回键或者下一步对软键盘进行隐藏.为了更好的体验,我们可以实现当用户使用完毕软键盘时.点击空白区域即可实现隐藏的功能.效果如图所示: 代码实现 代码块语法遵循标准markdown代码,例如: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23

android中的返回键与Activity

我在做应用时遇到一个问题,就是在启动主页面时需要预先加载一些数据,我是在一个加载页中处理完这些数据然后再转到主页面,但当我在主页面中按返回键时,系统会返回加载页面.我不希望加载页在使用完之后还被保留在任务中. Android的官方文档中这样描述的返回栈.任务和activity的默认关系: 1:当从Activity A中启动Activity B时,Activity A停止,但是保存了它的状态(比如,滚动位置和表单中的文字).如果当用户在Activity B中按了返回键,Activity A会恢复之

关于iOS导航控制器隐藏和显示会出现返回键失效,导航栏标题动画异常

最近做的demo  bug出现了,我觉得这个bug出现得很经典所以贴出来给大家看看, bug演示就是:点击返回键失效出现如下gif图演示的内容 为啥会出现如此奇葩的bug,系统的返回键居然失效了,尴尬症又犯了,愣是点了很久也不知所措 bug出现的源头:从不隐藏导航栏进行手势返回的时候,手势返回一半松手,回到不隐藏导航栏的页面,在push其他页面,就会出现返回键失效的问题 出现bug的重要步骤:手势返回一半又松手 进行页面隐藏导航栏的代码如下 //显示导航栏 [self.navigationCon

PopupWindow响应返回键的问题

假设情景是这样的:在一个Activity中弹出一个PopupWindow,要求在按返回键时关闭该PopupWindow. 如果该PopupWindow是无焦点的(默认情况),那么可以在Activity中响应返回键(onBackPressed),然后关闭它. 如果该PopupWindow是有焦点的,那么在它弹出来之后,所有的按键和触摸事件都会被它截获,包括返回键. 让PopupWindow获得焦点有两种方法,第一种是在创建的时候指定,第二种是在创建之后,调用它的setFocusable方法指定.