Androidで仮想キーボードを制御

12547 ワード

  1 package com.dome;  
2
3 import android.app.Activity;
4 import android.content.Intent;
5 import android.os.Bundle;
6 import android.view.KeyEvent;
7 import android.view.View;
8 import android.view.WindowManager;
9 import android.view.inputmethod.InputMethodManager;
10 import android.widget.Button;
11 import android.widget.Toast;
12
13 /**
14 * Dome
15 *
16 * @author wuxin
17 *
18 */
19 public class KeyCodeDomeActivity extends Activity {
20
21 //
22 private Button button;
23
24 /** Called when the activity is first created. */
25 @Override
26 public void onCreate(Bundle savedInstanceState) {
27 super.onCreate(savedInstanceState);
28 setContentView(R.layout.main);
29
30 //
31 button = (Button) findViewById(R.id.button1);
32
33 //
34 button.setOnClickListener(new View.OnClickListener() {
35
36 @Override
37 public void onClick(View v) {
38 // TODO Auto-generated method stub
39
40 //
41 InputMethodManager imm = (InputMethodManager) KeyCodeDomeActivity.this
42 .getSystemService(INPUT_METHOD_SERVICE);
43
44 // ( )
45 imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);
46 }
47 });
48
49 }
50
51 /**
52 * ( 、 、Home 、 ....)
53 */
54 @Override
55 public boolean onKeyDown(int keyCode, KeyEvent event) {
56 // TODO Auto-generated method stub
57
58 /*
59 * / :android.permission.BIND_INPUT_METHOD
60 */
61 if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
62
63 Toast.makeText(KeyCodeDomeActivity.this, " ",
64 Toast.LENGTH_SHORT).show();
65
66 return true;// true
67
68 }
69
70 /*
71 * Home / :android.permission.DISABLE_KEYGUARD
72 * : onAttachedToWindow()
73 */
74 if (KeyEvent.KEYCODE_HOME == keyCode) {
75
76 Toast.makeText(getApplicationContext(), " Home ",
77 Toast.LENGTH_SHORT).show();
78
79 return true;
80
81 }
82
83 /*
84 * menu
85 */
86 if(KeyEvent.KEYCODE_MENU == keyCode){
87
88 Toast.makeText(getApplicationContext(), " Menu ",
89 Toast.LENGTH_SHORT).show();
90
91 return true;
92
93 }
94
95 /*
96 *
97 */
98 if(KeyEvent.KEYCODE_SEARCH == keyCode){
99
100 Toast.makeText(getApplicationContext(), " ",
101 Toast.LENGTH_SHORT).show();
102
103 return true;
104
105 }
106
107
108 return super.onKeyDown(keyCode, event);
109 }
110
111 /*
112 * (non-Javadoc)
113 * @see android.app.Activity#onAttachedToWindow()
114 */
115 public void onAttachedToWindow() {
116 this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
117 super.onAttachedToWindow();
118 }
119
120 }