以前都是用的时候查资料做些增添即可,现在下决心系统学习下。

首先发现developer.Android.com在开发工具上开始推出了 Android Studio了,不过他自己没有sdk manager,还得下载这个。然后设置下sdk目录才能使用。新建项目的目录和名字也以前的ADT开发工具有些不同。不过res,src这些都是一样的。所以还是可以两个人以上共同开发。

先说个很大不同的,就是AndroidMainfest.xml文件,里面的内容比ADT的要少,因为有部分被挪到了build.gradle,因为Android Studio采用的是gradle来构建项目的,比如最低android版本的要求之类放到这个文件里了。下面给个截图

第二个实例里有输入框,然后用到了自动隐藏键盘的一段代码。

im_ctrl = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);

im_ctrl.hideSoftInputFromWindow(user_name.getWindowToken(), 0);

显示键盘的方法是 im_ctrl.showSoftInput(editText, 0);

还有个如果要在应用一打开就显示输入键盘的话,不能直接用showSoftInput 方法,不能直接在OnCreate中设置,必须等View绘制事件完毕才可以弹出,需要用到Timer辅助实现,如果要实现输入的功能,必须让EditText获得焦点。

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

user_name = (EditText) findViewById(R.id.user_name);
btn_ok.setOnClickListener(ok_handle);
im_ctrl = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);

Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
Looper.prepare();
InputMethodManager imm = (InputMethodManager)MainActivity.this.getSystemService(INPUT_METHOD_SERVICE);
imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);
Toast.makeText(MainActivity.this, "Hello", Toast.LENGTH_LONG).show();//此行没有体现出来,不知道什么原因,要加此行,必须有 前面的 Looper.prepare();
}
}, 1000);

这里有个 Looper.prepare();的问题。原因是出现这种问题的原因是因为Android中不能在子线程中来刷新UI线程。可能是因为这个所以那个提示我没看到。

禁止弹出输入键盘是如下设置的,不知道什么时候用,先知道下吧。

android:name=".ClientSearchViewActivity"
            android:label="@string/app_name" 
            android:screenOrientation="portrait"
            android:windowSoftInputMode="adjustUnspecified|stateHidden"
            android:configChanges="orientation|keyboardHidden">

最新文章

  1. jQuery的选择器中的通配符
  2. sql中的!=判断的注意事项
  3. .Net操作注册表--un
  4. Qt中在图片上叠加显示文字
  5. 【转载]】Microsoft SQL Server, 错误:4064的解决方法
  6. Android四大基本组件
  7. ListView OnScrollListener详解(滑屏分页显示数据)
  8. PHP导出一个txt文本文件
  9. ER图是啥?
  10. SSH服务器拒绝了密码,请再试一次
  11. PL/SQL连接远程oracle数据库配置
  12. Angular $broadcast和$emit和$ond实现父子通信
  13. python下划线
  14. java.lang.NoSuchMethodError: org.springframework.web.context.ConfigurableWebApplicationContext.getEnvironment()Lorg/springframework/core/env/ConfigurableEnvironment;问题
  15. 03.获取页面的flash文件
  16. Windows Azure中WebSite 网站, Cloud Service 云服务,Virtual Machine 虚拟机的比较
  17. UITableView中cell里的UITextField不被弹出键盘挡住
  18. VCS常用指令
  19. mono for android 第四课--提示框(转)
  20. 20155222 2016-2017-2 《Java程序设计》第3周学习总结

热门文章

  1. TIM—基本定时器
  2. RFID Hacking–资源大合集
  3. 上传绕过WAF几种常见的姿势
  4. [driver]linux内核动态加载模块
  5. am335x alsa codec调试
  6. 常见linux内核线程说明
  7. MyBatis增删改查模板
  8. sql row_number 用法
  9. 数据库 proc编程六
  10. iOS开发 - CALayer图层