随笔分类 -  Android

Android系统层次结构及分析
摘要:1、android分为四层:应用程序层(Applications)、应用程序框架层(Application Framework)、系统运行库层(Libraries和Android Runtime)和Linux内核层(Linux Kernel)。2、应用程序层:所有的应用程序都是使用java语言编写的,通过调用应用程序框架层(Application Framework)所提供的API来完成。3、应用程序框架层:为开发人员提供了可以完全访问核心应用程序所使用的API框架。•活动管理器:管理应用程序生命周期并提供常用的导航回退功能。比如:开启应用程序需要的资源和退出应用程序时需要的释放资源。•窗口管 阅读全文
posted @ 2013-04-19 01:31 elleniou 阅读(879) 评论(0) 推荐(0)
android回调函数总结
摘要:回调函数就是那些自己写的,但是不是自己来调,而是给别人来掉的函数。消息响应函数就可以看成是回调函数,因为是让系统在合适的时候去调用。这不过消息响应函数就是为了处理消息的,所以就拿出来单做一类了。其实本质上就是回调函数。但是回调函数不是只有消息响应函数一种,比如在内核编程中,驱动程序就要提供一些回调函数,当一个设备的数据读写完成后,让系统调用这些回调函数来执行一些后续工作。回调函数赋予程序员这样一种能力,让自己编写的代码能够跳出正常的程序控制流,适应具体的运行环境在正确的时间执行。回调函数总结别人给回调的定义:所谓回调,就是对象A调用另一对象B中的某个方法b,然后B又在某个时候反过来调用A中的某 阅读全文
posted @ 2012-05-21 02:07 elleniou 阅读(33383) 评论(5) 推荐(0)
eclipse导入工程中文乱码问题
摘要:eclipse之所以会出现乱码问题是因为eclipse编辑器选择的编码规则是可变的。一般默认都是UTF-8或者GBK,当从外部导入的一个工程时,如果该工程的编码方式与eclipse中设置的编码方式不同,就会产生中文的乱码问题,这其中还有几种情况。如果导入的整个工程的编码方式与eclipse的编码方式有冲突,那么这个工程里所有的中文 都是乱码;如果所有工程的编码方式与eclipse工作空间的编码方式有冲突,那么所有的工程里的中文都有可能是乱码。对于eclipse工作空间 ,eclipse会把你改的设置保存在工作空间的设置文件中,对于单个工程的编码方式进行修改,那么eclipse会把编码方式保存在 阅读全文
posted @ 2012-05-20 09:21 elleniou 阅读(27639) 评论(2) 推荐(0)
你真的会用Android的Dialog吗?由一个Exception想到的
摘要:一个Bug前几日出现这样一个Bug是一个RuntimeException,详细信息是这样子的:java.lang.IllegalArgumentException: View not attached to window manager at android.view.WindowManagerImpl.findViewLocked(WindowManagerImpl.java:356) at android.view.WindowManagerImpl.removeView(WindowManagerImpl.java:201) at android.view.Window$LocalWin 阅读全文
posted @ 2012-05-20 09:17 elleniou 阅读(608) 评论(0) 推荐(0)
openFileOutput()
摘要:首先给大家介绍使用文件如何对数据进行存储,Activity提供了openFileOutput()方法可以用于把数据输出到文件中,具体的实现过程与在J2SE环境中保存数据到文件中是一样的。public void save() { try { FileOutputStream outStream=this.openFileOutput(“a.txt”,Context.MODE_WORLD_READABLE); outStream.write(text.getText().toString().getBytes()); outStream.close(); Toast.makeText(MyActi 阅读全文
posted @ 2012-05-17 01:14 elleniou 阅读(33899) 评论(1) 推荐(2)
Android Application 对象介绍
摘要:What is Application Application和Activity,Service一样是android框架的一个系统组件,当android程序启动时系统会创建一个 application对象,用来存储系统的一些信息。通常我们是不需要指定一个Application的,这时系统会自动帮我们创建,如果需要创建自己 的Application,也很简单创建一个类继承 Application并在manifest的application标签中进行注册(只需要给Application标签增加个name属性把自己的 Application的名字定入即可)。 android系统会为每个程序运行时.. 阅读全文
posted @ 2012-05-16 00:24 elleniou 阅读(55866) 评论(2) 推荐(1)
SoftReference 介绍
摘要:1 Java中的SoftReference 2 即对象的软引用。如果一个对象具有软引用,内存空间足够,垃 圾回收器就不会回收它;如果内存空间不足了,就会回收这些对象的内存。只要垃圾回收器没有回收它,该对象就可以被程序使用。软引用可用来实现内存敏感的高 速缓存。使用软引用能防止内存泄露,增强程序的健壮性。 3 SoftReference的特点是它的一个实例保存对一个Java对象的软引用, 该软引用的存在不妨碍垃圾收集线程对该Java对象的回收。也就是说,一旦SoftReference保存了对一个Java对象的软引用后,在垃圾线程对 这个Java对象回收前,SoftReference类所提... 阅读全文
posted @ 2012-05-15 23:04 elleniou 阅读(8047) 评论(0) 推荐(0)
Android 图片平铺实现方式
摘要:1 我们大家都看过平铺的效果,那么我们都是怎么样才能实现的那,我们其实主要用到的就是api,我们一开始new一个bitmap,就可以了,但是,大家都没有想过,我们还可以用什么方法来做这个事情那,那么我们就来说说第二种方法,那就在用到了xml,上面我们说了两个方法,但android是非常强大的,也就是说我们还有第三个方法,那就是我们自己画出来,那么我们就来看看代码吧: 2 3 1)第一种利用系统提供的api实现 4 5 Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.pic); 6... 阅读全文
posted @ 2012-05-10 16:00 elleniou 阅读(5021) 评论(0) 推荐(1)
android 各种进度条(ProgressBar)
摘要:当一个应用在后台执行时,前台界面就不会有什么信息,这时用户根本不知道程序是否在执行、执行进度如何、应用程序是否遇到错误终止等,这时需要使用进度条来提示用户后台程序执行的进度。Android系统提供了两大类进度条样式,长形进度条(progress-BarStyleHorizontal)和圆形进度条(progressBarStyleLarge)。进度条用处很多,比如,应用程序装载资源和网络连接时,可以提示用户稍等,这一类进度条只是代表应用程序中某一部分的执行情况,而整个应用程序执行情况呢,则可以通过应用程序标题栏来显示一个进度条,这就需要先对窗口的显示风格进行设置"requestWind 阅读全文
posted @ 2012-05-07 22:47 elleniou 阅读(4650) 评论(0) 推荐(0)
八款开源 Android 游戏引擎
摘要:初学Android游戏开发的朋友,往往会显得有些无所适从,他们常常不知道该从何处入手,每当遇到自己无法解决的难题时,又往往会一边羡慕于 iPhone下有诸如Cocos2d-iphone之类的免费游戏引擎可供使用,一边自暴自弃的抱怨Android平台游戏开发难度太高,又连个像样的游 戏引擎也没有,甚至误以为使用Java语言开发游戏是一件费力不讨好且没有出路的事情。事实上,这种想法完全是没有必要且不符合实际的,作为能和苹果iOS分庭抗礼的Android(各种意义上),当然也会有相当数量的游戏引擎存在。仅仅因为我们处于这个狭小的天地间,与外界接触不够,所以对它们的存在茫然不知罢了。下面我就罗列出八款 阅读全文
posted @ 2012-05-07 01:03 elleniou 阅读(425) 评论(0) 推荐(0)
绘图工具备忘
摘要:应用类型:教学辅助,学习助手待解决问题:如何将手机屏幕显示在电脑屏幕上(豌豆夹)功能1.机械操作2.随意图画3.智能辨别4.计算模式(数字、运算符辨别,运用编译原理语法分析的知识)5.附加功能(1)图形智能辨别(2)图形缩放(3)旋转(4)移动(5)保存(操作名)(6)图形延伸(7)删除(8)颜色选择(9)画笔大小(10)3D转换目前解决方案:1.利用分类求解方法,将特殊图形以及没有特定方程的图形进行细小划分2.方差求解,对于曲线方程可以通过模拟出其表达式(最合适的一次表示、二次表达式、三次表达式。。。),然后将点带入进行方差对比,最小者为最佳选择。3.分类可以分为闭合图形和不闭合图形。是否闭 阅读全文
posted @ 2012-05-06 22:12 elleniou 阅读(289) 评论(0) 推荐(0)
Android访问权限大全
摘要:android.permission.ACCESS_CHECKIN_PROPERTIES允许读写访问”properties”表在checkin数据库中,改值可以修改上传( Allows read/write access to the “properties” table in the checkin database, to change values that get uploaded)android.permission.ACCESS_COARSE_LOCATION允许一个程序访问CellID或WiFi热点来获取粗略的位置(Allows an application to access 阅读全文
posted @ 2012-05-04 00:51 elleniou 阅读(744) 评论(0) 推荐(0)
Android程序完全退出的三种方法
摘要:Android程序完全退出的三种方法作者: Android开发网原创 时间: 2010-06-10 很多网友可能发现自己的Android程序有很多Activity,比如说主窗口A,调用了子窗口B,在B中如何关闭整个Android应用程序呢? 这里Android123给大家三种比较简单的方法实现。 首先要说明在B中直接使用finish(),接下来手机显示的还是主窗口A,所以一起来看看Android开发网是如何实现的吧. 1. Dalvik VM的本地方法 android.os.Process.killProcess(android.os.Process.myPid()... 阅读全文
posted @ 2012-05-04 00:43 elleniou 阅读(7355) 评论(0) 推荐(0)
android布局属性
摘要:1 android布局属性 2 布局: 3 AbsoluteLayout(绝对布局): 4 xmlns:android="http://scmemas.android.com/apk/res/android" 5 style="@..." 6 android:clipChildren="true|false" 7 android:clipToPadding="true|false" 8 android:layoutAnimation="@---" 9 android:animationCache 阅读全文
posted @ 2012-05-04 00:39 elleniou 阅读(801) 评论(0) 推荐(0)
Android SQLite 数据库详细介绍
摘要:Android SQLite 数据库详细介绍我们在编写数据库应用软件时,需要考虑这样的问题:因为我们开发的软件可能会安装在很多用户的手机上,如果应用使用到了SQLite数据库,我们必须在用户初次使用软件时创建出应用使用到的数据库表结构及添加一些初始化记录,另外在软件升级的时候,也需要对数据表结构进行更新。那么,我们如何才能实现在用户初次使用或升级软件时自动在用户的手机上创建出应用需要的数据库表呢?总不能让我们在每个需要安装此软件的手机上通过手工方式创建数据库表吧?因为这种需求是每个数据库应用都要面临的,所以在Android系统,为我们提供了一个名为SQLiteOpenHelper的抽象类,必须 阅读全文
posted @ 2012-05-04 00:36 elleniou 阅读(11460) 评论(0) 推荐(2)
为Android应用程序添加社会化分享功能
摘要:正在做个android的小应用,有点想尝试一下社会化分享,比如分享到新浪微博啥的。看一下新浪,人人网的API,说实话功能很全很强大,但虽说有相对的SDK,但是总觉得不方便。因为正在使用友盟的统计SDK,无意间发还有个SNS的SDK,看了一下文档,感觉不错哈。总共需要3个包,Umeng-Android-SDK-SnsService.jar,httpmime-4.1.1.jar和commons-httpclient-3.1.jar。大小分别为63K,27K,298K。感觉有点点大,但是比较一下新浪,人人,腾讯微薄提供的API,其实大小没差好多,等下我们还可以压缩一下的嘛。新建一个文件夹libs,将 阅读全文
posted @ 2012-04-30 01:21 elleniou 阅读(2816) 评论(0) 推荐(0)
Android将图像转换成流存储与将流转换成图像
摘要:1 //take the image to byte[] 2 byte[] byteIcon = userIcon; 3 4 //将字节数组即头像从二进制流转换成drawable 5 if(byteIcon != null){ 6 7 ByteArrayInputStream bais = new ByteArrayInputStream(byteIcon); 8 ... 阅读全文
posted @ 2012-04-28 11:12 elleniou 阅读(9388) 评论(0) 推荐(0)
Android 在代码中获取手机屏幕的宽高
摘要:1 DisplayMetrics dm = new DisplayMetrics();2 //获取屏幕信息3 getWindowManager().getDefaultDisplay().getMetrics(dm);4 5 int screenWidth = dm.widthPixels;6 7 int screenHeigh = dm.heightPixels; 阅读全文
posted @ 2012-04-28 02:09 elleniou 阅读(43103) 评论(0) 推荐(1)
如何改变Android tab 的高度和字体大小
摘要:1 int count = tabWidget.getChildCount();//TabHost中有一个getTabWidget()的方法 2 for (int i = 0; i < count; i++) { 3 View view = tabWidget.getChildTabViewAt(i); 4 view.getLayoutParams().height = 80; //tabWidget.getChildAt(i) 5 final TextView tv = (TextView) view.findViewById(android.R.id.titl... 阅读全文
posted @ 2012-04-28 02:04 elleniou 阅读(9506) 评论(0) 推荐(0)
MATCH_PARENT是什么类型的布局
摘要:有网友表示对于很多工程中的MATCH_PARENT出现在layout中感到不明白,过去只有FILL_PARENT和WRAP_CONTENT那么match_parent到底是什么类型呢? 其实从Android 2.2开始FILL_PARENT改名为MATCH_PARENT ,从API Level为8开始我们可以直接用MATCH_PARENT来代替FILL_PARENT,最后Android123提醒大家,他们的定义本质是一样均为-1,只是换了个别名,可能为了更准确些,比如最终在SDK中的定义为:fill_parent -1 The view should be as big as its par. 阅读全文
posted @ 2012-04-28 00:04 elleniou 阅读(2051) 评论(0) 推荐(0)