`
meohao
  • 浏览: 97734 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论
文章列表
1.进入声音设置,勾选“选择操作音”; 2.勾选文件或文件夹时观察是否有选择操作音; 此时应该会对应的有选择操作音的,但为什么无选择操作音? <CheckBox    android:id="@+id/checkbox"    android:layout_width="wrap_content"       android:layout_height="wrap_content"    android:focusable="false"> </CheckBox>      原来So ...
1.应用自身启动时创建快捷方式    当我们在模拟器或手机上屏幕上长按屏幕会弹出选择框,询问是否添加快捷方式等操作:当我们选择ShortCut后,就会出现一个ListView列出所有可以添加的items: 下面通过手动建立一个程序,添加了intentFilter为android.intent.action.CREATE_SHORTCUT的intent,这样当选择了它后,就会在桌面生成一个自定义需要这个activity去做一件事情的快捷图标: 处理点击快捷图标后执行的代码块Shortcut.java Intent addShortcut;   //获取启动这个activity的intent ...
在ListView里加入CheckBox,会导致点击ListView的item之后无法响应,只能点击CheckBox,原因是CheckBox的事件响应优先级高于ListItem,所以屏蔽了ListItem的单击事件,如果要使用onItemClick事件,需要设置CheckBox的android:focusable="false"。
Broadcast分为三种: 1.普通广播   无序   this.sendBroadcast(i)       this.getContext().sendBroadcast(i, "权限") 2.有序广播  (可以配置有序广播的优先级)    this.getContext().sendOrderedBroadcast(i, null); 3.粘性广播     this.sendStickyBroadcast ...
   Cursor是查询数据后得到的一个管理数据集合的类,正常情况下,如果查询得到的数据量较小时不会有内存问题,而且虚拟机能够保证Cusor最终会被释放掉。然而如果Cursor的数据量特表大,特别是如果里面有Blob信息时,应该保 ...
转载的,感觉这样理解还是蛮通俗的~~~~~ 通俗点说,就是事件结束后的回调方法。 比如吃饭,有人吃完饭要散步,有人吃完饭要吃水果,有人吃完饭要休息,等等各种不同的需求,但是吃饭是大家都要做的 现在要你提供一个动作:吃饭+饭后做的事 然后你可以设计一个吃饭的方法:  eat(),因为吃饭么就张嘴吃,没什么区别,大家都会用的这个动作,但是饭后的事呢?每个人的动作不一样,怎么办呢?由于饭后的事只有调用的人才知道,那么这个饭后的动作只能由调用的人来完成,如何让他们自己完成各自不同的饭后动作,而你又能访问到这个饭后的动作来帮他们实现? 就是定义一个标准,接口。用接口来定义吃完饭之后做的事: interfa ...
Service的生命周期,只继承了onCreate(),onStart(),onDestroy() 第一次启动Service,先调用了onCreate(),onStart() 停止Service,调用onDestroy() 再次启动启动Service,onStart()
Eclipse中的outline标识。 显示总共分为三种类型: 1.颜色:红、黄、绿 2.形状:方、菱、圆 3.内部:实心、空心 红方:private 黄菱:protected 绿圆:public 实心:代码函数 空心:代表变量 此外还有一些字母标识 C 代表create S 代码static F 代表final A 代表Abstract 常用快捷键 Alt+/ 自动完成,比你想的要智能,输入一个for或者switch试一试 Ctrl+Shift+F 代码格式化 Ctrl+Shift+O 自动导入包,删除无用的包,并分类 Ctrl+D 删除当前行 Alt+Shift+R 智能重 ...
1.将**.apk放到正确位置:   一般放入到packages/custom/<定制项目文件夹>/<应用名文件夹>/app/**.apk 2.编写mk文件: /packages/custom/<定制项目文件夹>/<应用名文件夹>/Android.mk 当apk文件中还依赖一些lib时,需要特殊处理,将lib文件的目录复制到system/lib文件夹下。如果直接拷贝到system/app目录下,apk文件编译时确实会打包到system.img中,且应用在主菜单中也能找到,但是通常运行时会报错。
1.将GMS中的google文件夹拷贝到device/目录下device\zte\products\*** 2.修改对应项目中的编译文件,将GMS包编入 例如:X600.mk 将第6行打开,加入gms.mk文件,在编译的时候,就会将GMS包编入。 $(call inherit-product,device/google/products/gms.mk) 根据这一行上面一行的注释: #include gms should rm Provision app in generic.mk 那么我们还需要修改 /build/target/generic.mk 把其中的Provision一行删掉。 针对 ...
原生的Android系统中,主菜单页面是不支持图标的编辑功能的,在Launcher模块中有这样一个需求,需要实现主菜单的编辑功能,也就是要实现主菜单中的应用程序图标能自定义位置,并能自由拖拽,通过点击可以直接卸载某应用程序等等,大家都知道,主菜单中的应用程序图标会响应点击事件,点击应用程序图标之后会进入对应的应用程序,那么要实现主菜单的编辑功能,必须先了解Android事件触发机制,最终实现图标的拖拽和位置的自定义排序。 首先,先了解由于触摸(Touch)而触发的事件。 Android的事件:onClick, onScroll, onFling等等,都是由许多个Touch组成的。但是他们有一些主 ...
1.Activity和Task(栈)的关系   Task就像一个容器,而Activity就相当与填充这个容器的东西,第一个东西(Activity)则会处于最下面,最后添加的东西(Activity)则会在最低端。从Task中取出东西(Activity)则是从最顶端取出,也就是说最先取出的是最后添加的东西(Activity),一次类推,最后取出的是第一次添加的Activity,而Activity在Task中2.界面跳转和服务的启动都会用到Intent,现在介绍Intent Flag是关于Activity的跳转 Intent Flag有20多种,常用的有以下四种   Intent intent = n ...
LaunchMode在很多应用的Activity中都有设置,但之前都没有系统的学习过,直到上次碰到一个相关问题,就是设置正确的LauncherMode才解决此问题,所以决定在这里总结一下。 Activity有四种launchMode,launchMode在多个Activity跳转的过程中扮演着重要的角色,它可以决定是否生成新的Activity实例,是否重用已存在的Activity实例,是否和其他Activity实例公用一个task里。这里简单介绍一下task的概念,task是一个具有栈结构的对象,一个task可以管理多个Activity,启动一个应用,也就创建一个与之对应的task。 Activ ...
onSaveInstanceState()什么时候会被执行呢? 1.当用户按下HOME键:系统不知道你按下HOME键后要运行多少其他的程序,自然也不知道activityA是否会被销毁,故系统会调用onSaveInstanceState(),让用户有机会保存某些非永久性的数据。 2.长按HOME键:此时会弹出历史应用,选择运行其他的程序时。 3.按下电源键(解锁)时。 4.从ActivityA中启动一个新的Activity时。 5.屏幕方向切换时:在屏幕切换之前,系统会销毁ActivityA,在屏幕切换之后系统又会自动的创建ActivityA,所以onSaveInstanceState一定会被执行 ...
编译源代码的时候会要执行下面的命令: 1.source build/envsetup.sh envsetup.sh这个编译脚本就位于/build/envsetup.sh中 2.choosecombo根据这个脚本中会让用户选择user/eng模式。     要了解Android编译选项eng、user和userdebug的区别,需先了解下LOCAL_MODULE_TAGS这个配置项,在之前的博客中有提到过,该配置项处于Android.mk文件中,一般配置形式为LOCAL_MODULE_TAGS := user eng optional test那么LOCAL_MODULE_TAGS设置为不同的值有 ...
Global site tag (gtag.js) - Google Analytics