`

Android 4.0-Launcher-FolderEdit-onKeyPreIme

阅读更多
从这个星期开始看Android 4.0的code了。很久没有看source code了,还是在09年和10年看的1.5版本,现在4.0已经出来,觉得这是一个重新切入的版本,毕竟他是Tablet和smart phones的统一版本.我选择学习的第一app是Launcher,在1.5的版本觉得它的是源码最多的一个,在4.0却是Gallery了。接下来我针对学习Launcher过程掌握到新的API和心得体会进行记录:

在Launcher中提供了Folder 这个功能,Folder还可以命名,其中命名的输入框就是一个EditText,在这里重载了EditText,重载类为:FolderEditText
我们看其源码:
package com.android.launcher2;

import android.content.Context;
import android.util.AttributeSet;
import android.view.KeyEvent;
import android.widget.EditText;

public class FolderEditText extends EditText {

    private Folder mFolder;

    public FolderEditText(Context context) {
        super(context);
    }

    public FolderEditText(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    public FolderEditText(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);
    }

    public void setFolder(Folder folder) {
        mFolder = folder;
    }

    @Override
    public boolean onKeyPreIme(int keyCode, KeyEvent event) {
        // Catch the back button on the soft keyboard so that we can just close the activity
        if (event.getKeyCode() == android.view.KeyEvent.KEYCODE_BACK) {
            mFolder.doneEditingFolderName(true);
        }
        return super.onKeyPreIme(keyCode, event);
    }
}


在这个class里面Override了这个onKeyPreIme这个function,就是为了捕获back key event进行处理,也就是比IME输入法更早处理该Event.若以后我们要在EditText中处理Back key event,我们就可以重载该函数。若不重载,那系统就会先把back key event发给IME了。
分享到:
评论

相关推荐

    android4.0-launcher可运行源码

    《深入解析Android 4.0 Launcher源码》 在Android操作系统中,Launcher是用户与系统交互的首要界面,它承担着应用启动、桌面布局管理以及快捷方式创建等核心功能。当我们谈论“android4.0-launcher可运行源码”时,...

    junit-platform-launcher-1.8.0-M1-API文档-中文版.zip

    赠送jar包:junit-platform-launcher-1.8.0-M1.jar; 赠送原API文档:junit-platform-launcher-1.8.0-M1-javadoc.jar; 赠送源代码:junit-platform-launcher-1.8.0-M1-sources.jar; 赠送Maven依赖信息文件:junit-...

    android4.0原生launcher代码

    【Android 4.0 原生 Launcher 代码详解】 Android 4.0(冰淇淋三明治,Ice Cream Sandwich)的 Launcher 是用户界面的核心部分,它作为系统的启动器,负责展示应用图标、小部件和主屏幕。理解其源码对于开发者深入...

    junit-platform-launcher-1.7.0.jar

    junit-platform-launcher-1.7.0.jarjunit-platform-launcher-1.7.0.jar

    android4.0 Launcher2

    《深入剖析Android 4.0 Launcher2》 在Android操作系统中,Launcher是用户与系统交互的门户,它作为主屏幕,提供了应用快捷方式、小部件和桌面布局等功能。在Android 4.0(Ice Cream Sandwich,简称ICS)版本中,...

    junit-platform-launcher-1.6.2.jar

    junit-platform-launcher-1.6.2.jarjunit-platform-launcher-1.6.2.jarjunit-platform-launcher-1.6.2.jar

    Android4.0 Ice Cream Sandwich Launcher 源码

    Android 4.0 Ice Cream Sandwich(简称ICS)对Launcher进行了重大改进,提升了用户体验和性能。下面我们将深入探讨Android 4.0 ICS Launcher的源码,分析其中的关键知识点。 1. **UI设计更新**:ICS引入了更加现代...

    junit-platform-launcher-1.8.0-M1-API文档-中英对照版.zip

    赠送jar包:junit-platform-launcher-1.8.0-M1.jar; 赠送原API文档:junit-platform-launcher-1.8.0-M1-javadoc.jar; 赠送源代码:junit-platform-launcher-1.8.0-M1-sources.jar; 赠送Maven依赖信息文件:junit-...

    ant-launcher-1.8.3.jar

    标签:ant-launcher-1.8.3.jar,ant,launcher,1.8.3,jar包下载,依赖包

    junit-platform-launcher-1.6.1-API文档-中文版.zip

    赠送jar包:junit-platform-launcher-1.6.1.jar; 赠送原API文档:junit-platform-launcher-1.6.1-javadoc.jar; 赠送源代码:junit-platform-launcher-1.6.1-sources.jar; 赠送Maven依赖信息文件:junit-platform-...

    android Launcher 4.0 (原生版本)

    Android Launcher 4.0,是Android操作系统的一个重要组成部分,它作为用户与系统交互的初始界面,扮演着桌面的角色。在Android 4.0(Ice Cream Sandwich,简称ICS)这个版本中,Launcher进行了诸多改进和优化,提升...

    junit-platform-launcher-1.3.1.jar_platform的意思

    junit-platform-launcher-1.3.1.jar

    Android 4.0 Launcher2可导入eclipse中直接运行

    Android 4.0 的 Launcher2 是 Android 操作系统的一个核心组件,它是用户界面的主要部分,负责桌面、应用抽屉和快捷方式的管理。这个项目是为开发者提供的源代码,允许他们深入理解 Launcher2 的工作原理,并对其...

    android-launcher-plus

    "Android-Launcher-Plus" 是一个专门为Android操作系统设计的自定义启动器,它扩展了原生Android启动器的功能,提供了更多个性化和高效的操作体验。这个项目可能包含了源代码、资源文件、配置文档等,旨在让开发者或...

    开发工具 ant-launcher-1.9.6

    开发工具 ant-launcher-1.9.6开发工具 ant-launcher-1.9.6开发工具 ant-launcher-1.9.6开发工具 ant-launcher-1.9.6开发工具 ant-launcher-1.9.6开发工具 ant-launcher-1.9.6开发工具 ant-launcher-1.9.6开发工具 ...

    Android 4.0 Launcher2 源码 Eclipse版

    【Android 4.0 Launcher2 源码 Eclipse版】是一个专门为Android 4.0 (Ice Cream Sandwich)系统设计的启动器源代码,适合开发者深入理解Android系统的桌面启动器工作原理,以及进行自定义开发。这个源代码版本是为...

    Android代码-android-rocket-launcher

    Android Rocket Launcher Gradle plugin that adds tasks to your android modules for installing and launching all variants. How to use Paste this code into your module's build.gradle apply plugin: '...

    simuro-launcher_2.0.2.exe

    simuro-launcher_2.0.2.exe

    Android-Blur-Launcher,模糊发射器建立在谷歌的Nougat发射器3.zip

    【Android-Blur-Launcher】是一款基于谷歌Nougat(安卓7.0)启动器的开源项目,旨在提供一个强大的、具有模糊效果的用户界面,为用户带来独特的个性化体验。这款启动器允许用户自定义手机主屏幕,打造极具特色的桌面...

    android4.0中Launcher2源码

    在Android 4.0(Ice Cream Sandwich)系统中,Launcher2是主屏幕应用程序,负责显示桌面图标、小部件以及启动其他应用。它是用户与系统交互的重要界面,因此深入理解其源码对于Android开发者来说至关重要。以下是对...

Global site tag (gtag.js) - Google Analytics