• android开发笔记(一)Android studio 输入法


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

    首先发现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">

  • 相关阅读:
    python 3+djanjo 2.0.7简单学习(三)--Django 管理页面
    python 3+djanjo 2.0.7简单学习(二)--创建数据库和模型
    lucene3.6.0 经典案例 入门教程
    Android——自定义Actionbar左侧覆盖不全的解决方案
    Android——ViewPager多页面滑动切换以及动画效果
    Android——LayoutInflater详解
    java.sql.SQLException:指定了无效的 Oracle URL
    核函数方法简介
    IEEE论文格式要求
    oracle使用DataBase Configuration Assistant创建、删除数据库
  • 原文地址:https://www.cnblogs.com/wayne173/p/4106217.html
Copyright © 2020-2023  润新知