公共类SimpleGridViewTest延伸活动{EditText EditText
,
私人PopupWindow PopupWindow;
私人GridView mGridView;
预展contentview;
私人List
GridViewAdapter适配器;
私有静态字符串editNum=啊?
<代码> @Override 公共空间onCreate(包savedInstanceState) { super.onCreate (savedInstanceState); setContentView (R.layout.menu); editText editText=() findViewById (R.id.editText); initData (); LayoutInflater增压泵=(LayoutInflater) getSystemService (Context.LAYOUT_INFLATER_SERVICE); contentview=inflater.inflate(出来。simple_grid_view_test, null); popupWindow=new popupWindow (contentview WindowManager.LayoutParams。WRAP_CONTENT WindowManager.LayoutParams.WRAP_CONTENT); popupWindow.setFocusable(真正的); popupWindow.setOutsideTouchable(假); mGridView=(显示数据表格)contentview.findViewById (R.id.gridview); 适配器=new GridViewAdapter(出来。grid_view_item、数据); mGridView.setAdapter(适配器); mGridView。setOnItemSelectedListener(新AdapterView.OnItemSelectedListener () { @Override 公共空间onItemSelected (AdapterView<?比;父,查看视图,int位置,长id) { 字符串s=datas.get(位置); Toast.makeText (SimpleGridViewTest。“宣”+位置,Toast.LENGTH_SHORT),告诉(); } @Override 公共空间onNothingSelected (AdapterView<?比;父){ } }); mGridView。setOnItemClickListener(新AdapterView.OnItemClickListener () { @Override 公共空间onItemClick (AdapterView<?比;父,查看视图,int位置,长id) { .trim .toString字符串num=editText.getText () () (); editNum=datas.get(位置); 如果(editNum.equals (“OK”)) { .trim .toString editText.setText (editText.getText () () ()); popupWindow.dismiss (); }else if (editNum.equals (" ")) { 如果(num.length()在0){ editText.setText (num。substring (0, num.length () - 1)); editText.setSelection (editText.getText () . length ()); } 其他}{ .trim .toString editText.setText (editText.getText () () () + datas.get(位置); editText.setSelection (editText.getText () . length ()); }代码>
//Toast.makeText (SimpleGridViewTest.this,“dian" +位置,Toast.LENGTH_SHORT),告诉();
}
});
<代码>//设置不调用系统键盘 如果(Build.VERSION。SDK_INT & lt;=10) { editText.setInputType (InputType.TYPE_NULL); 其他}{ getWindow () .setSoftInputMode (WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); 尝试{ Classcls=EditText.class; 方法setShowSoftInputOnFocus=cls。getMethod (“setShowSoftInputOnFocus”, boolean.class); setShowSoftInputOnFocus.setAccessible(真正的); setShowSoftInputOnFocus。editText invoke(假); }捕捉(异常e) { e.printStackTrace (); } } editText。setOnClickListener(新View.OnClickListener () { @Override 公共空间onClick(查看v) { editText popupWindow.showAsDropDown (); } }); } @Override 公共空间onBackPressed(){//点击返回按钮 如果(popupWindow.isShowing ()) { popupWindow.dismiss (); 返回; } super.onBackPressed (); }//填充数据 私人空间initData () { for (int i=0;我& lt;12;我+ +){ 如果我& lt;3){ datas.add(字符串。返回对象的值(i + 1)); }else if(我在3,,我& lt;7){ datas.add (String.valueOf (i)); }else if(我在7,,我& lt;11){ datas.add(字符串。返回对象的值(- 1)); }如果(我==3){ datas.add (“OK”); }如果(我==11){ datas.add (“0”); 其他}{ datas.add (" "); } } }代码>
}