-
硬键盘有关
日期:2011-06-02 | 分类:
1. 对于ime的输入,View可以在ime得到事件前对事件进行截获,方法是onKeyPreIme()
2. 在某个Dialog弹出时,且弹出输入法界面向Dialog中输入文字时,如果按back键,对于一些输入法,比如百度输入法,其接收back事件后并没有消费掉,而是继续传给Dialog,这样会使Dial... -
如何避免内存泄漏
日期:2011-06-01 | 分类:
原因.:
横竖屏切换时,所有的Static变量都不会被销毁和释放,所有如果某个static变量属于某个Activity,该static变量中有Activity中View的引用,进而有该Activity的引用,所有这时activity使用的资源也不会被释放(即使该activity被destroy)。
解决:
1. 不要让... -
Android Canvas小记
日期:2011-05-05 | 分类:
1. Canvas.save()保存当前Canvas的状态,save之后可以对Canvas平移,缩放,裁剪等
2. Canvas.restore()恢复之前save的状态
注:save和resotre要成对使用
-
Android小计
日期:2011-03-23 | 分类:
1. View.getParent()返回的是ViewParent,一般可以直接强制转化为View或ViewGroup
2. Animation中AnimationListenter的onAnimationEnd中如果调用view.clearAnimation,会导致传入到onAnimationEnd的view的parent变为null
3. -
Android Intent Flag说明
日期:2011-03-15 | 分类:
1. 不想让通过Intent启动的Acitvity放在Recent Task中,则可以在该Intent中加入一个Flag
intent.addFlags(Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);
待续... -
夏普8118u,8128u中gmail配置方法
日期:2010-12-01 | 分类:
夏普8118u,8128u中gmail配置方法:SMTP服务器:smtp.gmail.com,端口:465,安全类型:SSL(接受所有证书),IMAP服务器:imap.gmail.com,端口:993,安全类型:SSL(接受所有证书)
-
Dialog取消后重新开启会保存先前状态的问题
日期:2010-11-19 | 分类:Android
当在某个Activity中显示一个Dialog后,对其进行一些操作,当按取消后,再开启Dialog,Dialog中的状态是上次取消前的状态,如果恢复默认值或创建时设定的状态,解决这个问题的办法是在将原来的Dialog dismiss前调用removeDialog,代码如下:
removeDialog(DI... -
N1上更换静态壁纸的时间大概为一秒到两秒之间。
-
Google 的用户体验设计原则
日期:2010-11-17 | 分类:Android
Google 的用户体验设计原则的用户体验设计原则:
1. 有用(Useful):以用户为焦点,关注他们的生活、工作和梦想。
2. 快速(Fast):争取节省每一个毫秒。
3. 简单(Simple):简洁就是力量。
4. 魅力(Engaging):能够唤起新手的好奇心,能够吸引资深用户。
5. 革新(Innova... -
有关Animation要注意的地方
日期:2010-11-17 | 分类:Android
1. 在Animation结束时,在animationEnd函数中不要将View的visiable设为gone,这样容易产生一些layout有关的问题
-
Android中获得时间的方法
日期:2010-11-17 | 分类:Android
Date curDate = new Date(System.currentTimeMillis());
SimpleDateFormat formatter = new SimpleDateFormat ("yyyy年MM月dd日 HH:mm:s... -
Android实现重叠的布局
日期:2010-11-17 | 分类:Android
在Android中几种布局方式中,能够实现重叠效果的只有FrameLayout, 它默认是把元素加到左上角,后面添加的元素将覆盖前面的元素。
-
[zz]Task和Activity相关—Activity各种属性的解释
日期:2010-09-10 | 分类:Android
android:allowTaskReparenting
用来标记Activity能否从启动的Task移动到有着affinity的Task(当这个Task进入到前台时)——“true”,表示能移动,“false”,表示它必须呆在启动时呆在的那个Task里。
如果这个特性没有被设定,设定到<application>元素上... -
Android中弹出输入法界面不影响app界面布局
日期:2010-09-02 | 分类:Android
默认情况下,输入法弹出的时候,原来的view会被挤扁。有些应用不想被挤,它们可以接受被输入法view覆盖在上面。这时候需要在AndroidManifest.xml acitivty里面加上一句: android:windowSoftInputMode="adjustPan" 参考:http://sinaurl.cn/GfRjp
-
关于Android中横竖屏切换导致onConfigurationChanged的底层实现过程
日期:2010-08-30 | 分类:Android
手机横屏或竖屏方向改变时,ActivityManagerService现更新当前Activity的configuration,甚至有可能会通过destrory掉当前acitivity并重新start一个新的来更新,然后会根据新的configuration更新mHistory栈中其他所有的Activity中的configuration。具体函数在ensureActivitiesVisibleLocked(HistoryRecord top, HistoryRecord starting, S... -
更改AlertDialog中某些private变量的值
日期:2010-08-26 | 分类:Android
更改AlertDialog中某些private变量的值,使Dialog的mHandler为自定义Handler
AlertDialog alertDialog = new AlertDialog.Builder(...
Field field = alertDialog.getClass().getDeclaredField("mAlert");
field.setAccessible(true);
... -
Android中实现预置数据库的方法
日期:2010-08-26 | 分类:Android
1. 如何将SQLite数据库(dictionary.db文件)与apk文件一起发布?
解答:可以将dictionary.db文件复制到Eclipse Android工程中的res\raw目录中,如图1所示。所有在res\raw目录中的文件不会被压缩,这样可以直接提取该目录中的文件。可以将dictionary.db文件复制到res\raw目录中
2. 如何将打开res\raw目录中的数据库文件?
... -
Java中有关static块或static变量的探究
日期:2010-08-23 | 分类:Java
在Java中,类装载器把一个类装入Java虚拟机中,要经过三个步骤来完成:装载、链接和初始化,其中链接又可以分成校验、准备和解析三步,除了解析外,其它步骤是严格按照顺序完成的,各个步骤的主要工作如下:
装载:查找和导入类或接口的二进制数据;
链接:执行下面的校验、准备和解析步骤,其中解析步骤是可以选择的;
校验:检查导入类或接口的二进制数据的正确性;
准备:给类的静态变量分配并初始化存... -
Android中的View学习
日期:2010-08-21 | 分类:Android
The basic cycle of a view is as follows:
An event comes in and is dispatched to the appropriate view. The view handles the event and notifies any listeners. If in the course of processing the event, the view's bounds... -
对于setComponentEnabledSetting的副作用了解
日期:2010-08-14 | 分类:Android
PackageManager.setComponentEnabledSetting函数可以把某个ComponentName的state设为false或true,Android中对于state为false的Activity,是不能onCreate,如果该Activity对应与某个APK的Main Activity,则该APK在state为false时,其相应的图标不会显示在可启动程序列表里,即不能通过Main Launcher Intent filter query出来。
... -
Android Out Of Memory(OOM) 的详细研究
日期:2010-08-02 | 分类:Android
基于Android开发应用时,可能会挺时常出现Out Of Memory 异常.
在Android中,一个Process 只能使用16M内存,要是超过了这个限定就会跳出这个异常。这样就要求我们要时刻想着开释资源。Java的回收工作是交给GC的,如... -
Android内存管理
日期:2010-08-02 | 分类:Android
很多开发者都是从J2ME或J2EE上过来的,对于内存的使用和理解并不是很到位,Android开发网本次给大家一些架构上的指导,防止出现豆腐渣工程的出现。Android作为以Java语言为主的智能平台对于我们开发一些高性能和质量的软件来说了解Android程序内存管理机制是必须的。 Android的Dalvik VM在基础方面和Sun JVM没有什么大的区别仅仅是字节码的优化,我们要知道什么时候用gc什么时候用recycle以及到底用不用finalization,因为Java对内存的分配只需要ne... -
Android开发中有关Animation要注意的问题
日期:2010-07-09 | 分类:Android
对某一个View做Animation,如果在Animation的onAnimationEnd函数中如果使View变为Gone,则会产生一些意想不到的影响。比如会使View的Location发生变化。
初步估计是因为Animation是在单独线程中完成的,在onAnimationEnd函数调用之前,有可能会对要Gone的View进行其他操作,从而对View的坐标产生影响。
... -
Android中的几个System Service
日期:2010-06-30 | 分类:Android
1.得到正在运行的Activity列表:ActivityManager activityManager = (ActivityManager)this.mActivity.getSystemService(Context.ACTIVITY_SERVICE);
List<RunningAppProcessInfo> mAllProcessList = activityManager.getRunningAppProcesses();
2.... -
Android中几种布局方式
日期:2010-06-30 | 分类:Android
id="@+id/edtInput",ID 是连接UI 与代码的桥梁
Gravity= "center" ,Layout 中的控件居中
layout_width="fill_parent" ,自动填充至屏幕宽度,layout_height 同理
layout_width="wrap_content" ,自动填充为控件大小,layout_height 同理
Linea... -
Android中支持的有关尺寸的单位介绍
日期:2010-06-30 | 分类:Android
计算机中用到的尺寸单位有厘米(cm),毫米(mm),像素(px),英尺(in)等。android中支持的尺寸包括:
px 像素 屏幕上的真实像素表示
in 英尺 基于屏幕的物理尺寸
mm 毫米 基于屏幕的物理尺寸
pt &nb... -
编写跨平台Java程序注意事项
日期:2010-05-07 | 分类:Java
编写跨平台Java程序注意事项
使用Java语言编写应用程序最大的优点在于“一次编译,处处运行”,然而这并不是说所有的Java程序都具有跨平台的特性,事实上,相当一部分的Java程序是不能在别的操作系统上正确运行的,那么如何才能编写一个真正的跨平台的Java程序呢?下面是在编写跨平台的Java程序是需要注意的一些事情:
1. 编写Java跨平台应用程序时,你可以选择JDK1.0,1.1,1.2... -
Java编码浅析(注意区分三个概念)
日期:2010-05-07 | 分类:Java
Java编码浅析(注意区分三个概念)
http://www.javaeye.com/topic/311583
Bytes 通过解码变成 String String 通过编码变成 Bytes Java与Unicode:
Java的class文件采用utf8的编码方式 JVM运行时采用utf16 Java的字符串... -
J2EE的核心API与组件
日期:2010-05-07 | 分类:J2EE
J2EE的核心API与组件
J2EE平台由一整套服务(Services)、应用程序接口(APIs)和协议构成,它对开发基于Web的多层应用提供了功能支持,下面对J2EE中的13种技术规范进行简单的描述:
JDBC(Java Database Connectivity): JDBC API为访问不同的数据库提供了一种统一的途径,象ODBC一样,JDBC对开发者屏蔽了一些细节问题,另外,JDCB对数据库的... -
Java NIO API详解之二
日期:2010-05-07 | 分类:Java
Package java.nio.channels
这个包定义了Channel的概念,Channel表现了一个可以进行IO操作的通道(比如,通过FileChannel,我们可以对文件进行
读写操作)。java.nio.channels包含了文件系统和网络通讯相关的channel类。这个包通过Selector和
SelectableChannel这两个类,还定义了一个进行非阻塞(non-blocking)IO操作的API,这对需要高性能IO的应用非常重
要。...







