为什么输入框中不可以输入文字数字等信息

祝三 2014-03-19 02:29:54
代码如下:

package com.xqsoft.testgame;

import android.R.color;
import android.app.AlertDialog;
import android.content.Context;
import android.os.Bundle;
import android.text.InputType;
import android.util.Log;
import android.view.Gravity;
import android.view.ViewGroup.LayoutParams;
import android.view.ViewGroup.MarginLayoutParams;
import android.view.Window;
import android.view.WindowManager;
import android.view.inputmethod.InputMethodManager;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.PopupWindow;
import android.widget.Toast;

import com.xqsoft.xqgelib.XQGEActivity;

/**
*
* @author CX-WenJiaQing
* @since 主要的功能室实现一个输入框的功能
*/

public class TestTileMap extends XQGEActivity {

public static final int SOFT_INPUT_STATE_ALWAYS_VISIBLE = 5;
private static final String TAG = TestTileMap.class.getSimpleName();

EditText adView = null;// 输入框
PopupWindow popUp; // 对话框
TestTileMap _activity;// 窗体
LinearLayout layout;
LinearLayout mainLayout;
boolean adsinited = false;

public void onCreate(Bundle savedInstanceState) {
Log.i(TAG, "GameActivity onCreate");
super.onCreate(savedInstanceState);

// Make your custom init here
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
_activity = this;

adView = new EditText(_activity);

}

// Our popup window, you will call it from your C/C++ code later
public void showAdPopup() {
if (adsinited) {
return;
}
/*
* et_init(); if(adView!=null)
*/

{
_activity.runOnUiThread(new Runnable() {
@Override
public void run() {
Log.i(TAG, "showAdPopup:");

adsinited = true;
// Out popup window
/***
* 对话框
*/
popUp = new PopupWindow(_activity);// 定义一个对话框 功能和
// alertdialog
Log.i(TAG, "PopupWindow:");
// This is the minimum size for AdMob, we need to set this
// in case our target device run at 320x480 resolution
// (Otherwise no ad will be shown, see the padding kill
// below)
/***
* 对话框的属性设置 对话框的大小
*/
popUp.setWidth(320);
popUp.setHeight(50);

popUp.setWindowLayoutMode(LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT);

popUp.setClippingEnabled(false);
Log.i(TAG, "setClippingEnabled:");

layout = new LinearLayout(_activity);
mainLayout = new LinearLayout(_activity);
Log.i(TAG, "LinearLayout:");

layout.setPadding(-5, -5, -5, -5);

MarginLayoutParams params = new MarginLayoutParams(
LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT);
Log.i(TAG, "MarginLayoutParams:");
params.setMargins(0, 0, 0, 0);
Log.i(TAG, "setMargins:");
layout.setOrientation(LinearLayout.VERTICAL);// 设置位置水平布局 垂直
Log.i(TAG, "setOrientation:");// 输出setOrientation

/**
* 输入框 输入框的大小设置
*/
adView = new EditText(_activity); // 添加一个输入框
adView.setHeight(50);
adView.setWidth(500);
// adView.requestFocus(true);//获取焦点
// adView.setFocusable(true);// 设置焦点
// adView.setFocusableInTouchMode(true);

((InputMethodManager) getSystemService(INPUT_METHOD_SERVICE))
.toggleSoftInput(0,
InputMethodManager.HIDE_NOT_ALWAYS);

/***
* 下面语句可以再初始化的时候弹出输入法
*/

/***
* 输入法的显示或者隐藏
*/

// adView.setInputType(InputType.TYPE_CLASS_TEXT
// | InputType.TYPE_TEXT_FLAG_MULTI_LINE);

layout.addView(adView, params);// 输入框添加到窗体

Log.i(TAG, "addView:");// 输出

popUp.setContentView(layout);// 添加
Log.i(TAG, "setContentView:");// 输出
_activity.setContentView(mainLayout, params);// 添加
Log.i(TAG, "setContentView:");// 输出

popUp.showAtLocation(mainLayout, Gravity.TOP, 0, 0);
popUp.update();
}
});
}
}

// 添加一个输入框
public void RunJavaDemo() {
Log.i(ENGINE_TAG, "this is run java demo!", null);

showAdPopup();
}

/***
* 设置输入框的属性 高度 宽度 位置
*
* @param x
* 横坐标
* @param y
* 纵坐标
* @param w
* 宽度
* @param h
* 高度
* @return 返回结果
*/
public boolean AddEdit(int x, int y, int w, int h) {

return true;
}

}
...全文
83 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
祝三 2014-03-19
  • 打赏
  • 举报
回复
是用NDK开发的!

80,362

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧