摘要:第一个要点:首先要有良好的编程习惯要成为一名优秀的资源管理员;既要运用常识,还要使用公认的算法和标准的设计模式。在资源使用方面,如果你打开了资源,要记得关闭资源。要尽量晚地获取,尽量早地释放。这些由来已久的编程准则同样适用于你的Android应用程序,如果它们使用底层的设备服务,更是如此。比如说,假设你编写的一个应用程序依赖基于位置的服务。除非你绝对有必要,否则不要开始注册、获取位置最新信息;而且要确保,一旦你不再需要这些信息,就要取消获取最新信息的注册。这将帮助你避免不必要地耗费设备电池电量或占用系统资源。第二个要点:让阻塞操作远离主用户界面线程想确保你的应用程序运行起来很灵活,就要使用As
阅读全文
摘要:各种颜色值,方便查找http://wenku.baidu.com/view/74dfd0ea856a561252d36ffe.html-------------------------------------------------------------------<?xml version="1.0" encoding="utf-8" ?><resources><color name="white">#ffffff</color><!--白色 --><color n
阅读全文
摘要:内容来自sqlie的官网(http://www.sqlite.org/datatype3.html)大部分SQL数据库引擎使用静态数据类型,数据的类型取决于它的存储单元(即所在的列)的类型。SQLite3采用了动态的数据类型,存储值的数据类型和数值本身相关,而不是由它的字段的类型决定。SQLite3的动态数据类型能够向后兼容其它数据库普遍使用的静态类型,这就意味着,在那些使用静态数据类型的数据库上使用的数据表,在SQLite3上也能被使用。SQLite3具有以下5种存储类别(在这里,存储类别和数据类型有所区别):NULL 空值INTEGER 带符号整数,根据存入的数值的大小占据1,2,3,4,
阅读全文
摘要://触摸显示悬浮的按钮@Overridepublic boolean onTouch(View v, MotionEvent event) { if(!zoomControls.isShown()) { //用一个定时器定时 final Timer timer = new Timer(); TimerTask task = new TimerTask() { @Override public void run() { Message message = new Message(); message.what = 1; handler.sendMessage(message); } Handle
阅读全文
摘要:首先看看AndroidManifest.xml 1: <?xml version="1.0" encoding="utf-8"?> 2: <manifest xmlns:android="http://schemas.android.com/apk/res/android" 3: package="com.hi.braincol.local" 4: android:versionCode="1" 5: android:versionName="1.0">
阅读全文
摘要:SQLite是非常流行的嵌入式关系型数据库,轻载, 速度快,而且是开源。在Android中,runtime提供SQLite,所以我们可以使用SQLite,而且是全集的SQLite。SQLite提供 SQL接口,和一般的数据库一样。但是Android的API不采用JDBC,JDBC消耗太多的资源。SQLite支持绝大部分SQL-92标准,不支持:FOREIGN KEY constraints, nested transactions, RIGHT OUTER JOIN, FULL OUTER JOIN, and some flavors of ALTER TABLE.而我们在手持终端上使用SQL
阅读全文
摘要:启动界面Splash Screen在应用程序是很常用的,往往在启动界面中显示产品Logo、公司Logo或者开发者信息,如果应用程序启动时间比较长,那么启动界面就是一个很好的东西,可以让用户耐心等待这段枯燥的时间。Android 应用程序创建一个启动界面Splash Screen非常简单。比如创建一个工程MySample,主Acitity就叫MySample,创建另一个Activity叫 SplashScreen,用于显示启动界面,资源文件为splash.xml。SplashScreen的代码如下:package com.ctoof.android;import android.app.Acti
阅读全文
摘要:一。不让程序默认升起IME输入框有两种方法: 1.让EditText失去焦点,使用EditText的clearFocus方法 2.强制隐藏Android输入法窗口,在IME类中我们通过实例化输入法控制对象,通过hideSoftInputFromWindow来隐藏IME输入框。Toast.makeText(WindowBackgroundColorActivity.this, "焦点改变", Toast.LENGTH_SHORT).show(); InputMethodManager imm = (InputMethodManager)getSystemService(Con
阅读全文
摘要:关键代码:LayoutInflater mLayoutInflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);View menuView = (View)mLayoutInflater.inflate(R.layout.alert_dialog_menu_layout_new, null, true);//弹出窗口包含的视图popupWindow = new PopupWindow(menuView, LayoutParams.FILL_PARENT,238, true);//创建弹出窗口,指定大小 popup
阅读全文
摘要:Ctrl+1快速修复(最经典的快捷键,就不用多说了)Ctrl+D:删除当前行Ctrl+Alt+↓复制当前行到下一行(复制增加)Ctrl+Alt+↑复制当前行到上一行(复制增加)Alt+↓当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)Alt+↑当前行和上面一行交互位置(同上)Alt+←前一个编辑的页面Alt+→下一个编辑的页面(当然是针对上面那条来说了)Alt+Enter显示当前选择资源(工程,or文件or文件)的属性Shift+Enter在当前行的下一行插入空行(这时鼠标可以在当前行的任一位置,不一定是最后)Shift+Ctrl+Enter在当前行插入空行(原理同上条)Ctrl
阅读全文