Android
Broncho.Lee
爱生活...爱Android...
展开
-
Android Activity的四种加载模式
我们今天要讲的是Activity的四种launchMode。launchMode在多个Activity跳转的过程中扮演着重要的角色,它可以决定是否生成新的Activity实例,是否重用已存在的Activity实例,是否和其他Activity实例公用一个task里。这里简单介绍一下task的概念,task是一个具有栈结构的对象,一个task可以管理多个Activity,启动一个应用,也就创建原创 2012-08-28 20:29:27 · 2510 阅读 · 3 评论 -
Android之Activity的那些事
先看一下这一张经典的生命周期流程图:看过这个流程图,也基本了解了Activity生命周期的几个过程:1.启动Activity:系统会先调用onCreate方法,然后调用onStart方法,最后调用onResume,Activity进入运行状态。2.当前Activity被其他Activity覆盖其上或被锁屏:系统会调用onPause方法,暂停当前Activity的执行。3.当原创 2012-08-30 22:41:27 · 3074 阅读 · 0 评论 -
AndroidManifest.xml文件解析
Android学习笔记之AndroidManifest.xml文件解析 一、关于AndroidManifest.xmlAndroidManifest.xml 是每个android程序中必须的文件。它位于整个项目的根目录,描述了package中暴露的组件(activities, services, 等等),他们各自的实现类,各种能被处理的数据和启动位置。 除了能声明程序中的Activitie原创 2012-08-31 21:15:17 · 2104 阅读 · 2 评论 -
Android之获得已安装程序列表
我们大家都知道在手机上我们可以查看图标来知道我们都安装了什么样的应用,但实际上载Android中我们可以获得你安装应用的各种信息,(虽然在我的应用程序中只需要获得ICON即可),比如:名称,版本,包等,不仅仅只是图标。这样的话,给我们就带来了和多的方便,如果长时间不用的话,在查看时我们能在很快的时间里来知道这个应用是干什么的。我们也可以马上判断一下我们现在是否还有得到这个应用,用得到的话我们就留着原创 2012-09-03 20:07:51 · 2387 阅读 · 0 评论 -
Android之动画PopupWindow
废话不多说,先看效果图:这是主Activity代码:public class RollActivity extends Activity { private View view; private Button btn; private PopupWindow mPopupWindow; private View[] btns; /** Called when原创 2012-09-04 20:26:05 · 3031 阅读 · 0 评论 -
Android利用ViewFlipper实现屏幕切换动画效果
1、屏幕切换指的是在同一个Activity内屏幕见的切换,最长见的情况就是在一个FrameLayout内有多个页面,比如一个系统设置页面;一个个性化设置页面。2、介绍ViewFilpper类ViewFlipperextends ViewAnimatorjava.lang.Object ↳ android.view.View ↳ android.view.ViewGr原创 2012-08-27 09:56:58 · 3226 阅读 · 0 评论 -
Android WebView学习笔记
WebView(网络视图)能加载显示网页,可以将其视为一个浏览器。它使用了WebKit渲染引擎加载显示网页,实现WebView有以下两种不同的方法:第一种方法的步骤:1.在要Activity中实例化WebView组件:WebView webView = new WebView(this);2.调用WebView的loadUrl()方法,设置WevView要显示的网页: 互联网用:原创 2012-08-28 13:44:10 · 2220 阅读 · 0 评论 -
Android 横竖屏切换生命周期
1、新建一个Activity,并把各个生命周期打印出来2、运行Activity,得到如下信息onCreate-->onStart-->onResume-->3、按crtl+f12切换成横屏时onSaveInstanceState-->onPause-->onStop-->onDestroy-->onCreate-->onStart-->onResto原创 2012-08-28 22:42:20 · 2325 阅读 · 1 评论 -
Android之Handler与AsyncTask的那些事
AsyncTask和Handler对比1 ) AsyncTask实现的原理,和适用的优缺点AsyncTask,是android提供的轻量级的异步类,可以直接继承AsyncTask,在类中实现异步操作,并提供接口反馈当前异步执行的程度(可以通过接口实现UI进度更新),最后反馈执行的结果给UI主线程.使用的优点:l 简单,快捷l 过程可控 使用的缺点:l原创 2012-08-28 23:09:01 · 2808 阅读 · 0 评论 -
Android之JNI和NDK的那些事
NDK(Native Development Kit)“原生”也就是二进制android常用的开发方式是java封装的库,而这些库的底层实现是由C/C++实现,如媒体,图形库等java调用这样实现就需要用JNI(Java Native Interface)平时用的也就是google给我们封装的好的库,即便是底层实现用的不是Java,但都有统一的Java接口而NDK的作用是“我们原创 2012-08-27 21:29:26 · 2313 阅读 · 0 评论 -
Android TabHost学习笔记
一、什么是TabHost。Android 里面的TabHost就是选项卡,看下图(新浪微博界面):至于选项卡有什么好处或者用途,我想代码哥们都知道吧,我就不多说了。二、在Android里面如何实现TabHost有两种方式可以实现。1、继承TabActivity,然后用getTabHost()方法获取TabHost,最后在布局文件中定义各个Ta原创 2012-08-27 22:10:57 · 2274 阅读 · 0 评论 -
Android SurfaceView使用
1.概念 SurfaceView是View类的子类,可以直接从内存或者DMA等硬件接口取得图像数据,是个非常重要的绘图视图。它的特性是:可以在主线程之外的线程中向屏幕绘图上。这样可以避免画图任务繁重的时候造成主线程阻塞,从而提高了程序的反应速度。在游戏开发中多用到SurfaceView,游戏中的背景、人物、动画等等尽量在画布canvas中画出。2.实现方法1)实现步骤原创 2012-08-28 22:02:51 · 2046 阅读 · 0 评论 -
Android Adapter的那些事
1.概念 Adapter是连接后端数据和前端显示的适配器接口,是数据和UI(View)之间一个重要的纽带。在常见的View(ListView,GridView)等地方都需要用到Adapter。如下图直观的表达了Data、Adapter、View三者的关系:Android中所有的Adapter一览: 由图可以看到在Android中与Adapter有原创 2012-08-28 22:56:18 · 1890 阅读 · 3 评论 -
Android之Widget应用
1.Widget设计步骤 需要修改三个XML,一个class: 1)第一个xml是布局XML文件(如:main.xml),是这个widget的。一般来说如果用这个部件显示时间,那就只在这个布局XML中声明一个textview就OK了。 2)第二个xml是widget_provider.xml,主要是用于声明一个appwidget的。其中,Layout就是指定上面那个main.xm原创 2012-09-06 22:31:45 · 1617 阅读 · 0 评论 -
Android之TextView属性列表
android:autoLink设置是否当文本为URL链接/email/电话号码/map时,文本显示为可点击的链接。可选值(none/web/email/phone/map/all)android:autoText如果设置,将自动执行输入值的拼写纠正。此处无效果,在显示输入法并输入的时候起作用。android:bufferType指定getText()方式取得的文本类别。选项editabl原创 2012-09-08 10:58:17 · 1707 阅读 · 0 评论 -
Android之进程与线程
进程和线程是现代网络操作系统的核心概念。Android作为一种优秀的、承袭Linux的移动操作系统,其进程和线程的概念是开发者和安全工作人员需要深入了解的问题。本文将详细介绍Android中的进程、线程以及相关的技术问题。 进程和线程的基本概念当一个应用程序开始运行它的第一个组件时,Android会为它启动一个Linux进程,并在其中执行一个单一的线程。默认情况原创 2012-09-09 23:10:36 · 1528 阅读 · 0 评论 -
Android之MessageQueue、Looper、Handler与消息循环
在android的activity中有各种各样的事件,而这些事件最终是转换为消息来处理的。android中的消息系统涉及到: * 消息发送 * 消息队列 * 消息循环 * 消息分发 * 消息读取 消息对应的重要类有MessageQueue、Looper、Handler,它们分别对应着消息队列、消息循环和消息处理。 Handler类:Handler主要原创 2012-09-12 16:54:46 · 2564 阅读 · 0 评论 -
Android之消息推送实现
在开发Android和iPhone应用程序时,我们往往需要从服务器不定的向手机客户端即时推送各种通知消息,iPhone上已经有了比较简单的和完美的推送通知解决方案,可是Android平台上实现起来却相对比较麻烦,最近利用几天的时间对Android的推送通知服务进行初步的研究。在Android手机平台上,Google提供了C2DM(Cloudto Device Messaging)服务,起初我就原创 2012-09-05 21:31:00 · 17412 阅读 · 12 评论 -
Android之键盘点击事件
很简单,自己保存着用。就贴出代码:package archie.android.activity;import android.app.Activity;import android.os.Bundle;import android.view.KeyEvent;import android.view.MotionEvent;import android.view.Vie原创 2012-10-03 01:21:00 · 3803 阅读 · 4 评论 -
Android之ListView中的分割线
ListView中每个Item项之间都有分割线,设置android:footerDividersEnabled表示是否显示分割线,此属性默认为true。1.不显示分割线只要在ListView控件中添加android:footerDividersEnabled="false"即可。<ListView android:id="@+id/local_groups_list" androi原创 2012-10-03 01:22:46 · 4732 阅读 · 0 评论 -
Android之adb操作命令
疑问一:adb是什么? 疑问二:adb有什么用? 疑问三:作为最关键的问题,adb工具如何用?答疑一:adb的全称为Android Debug Bridge,就是起到调试桥的作用。通过adb我们可以在Eclipse中方面通过DDMS来调试Android程序,说白了就是debug工具。adb的工作方式比较特殊,采用监听Socket TCP 5554等端口的方式让IDE和Qemu通讯,原创 2012-09-15 17:19:26 · 2190 阅读 · 0 评论 -
Android之项目全局变量的定义
static修饰的静态变量,使用很方便,在不同的类和包中都可以使用,在虚拟机中单独占用内存,没错,这些都是它们的优点,不过在项目上线后,才发现static有一些不太好的地方。 在查看项目的崩溃信息时,发现很多地方莫明的出现空指针异常的错误,经过排查,发现可能就是static的问题。我们在项目中,将用户的信息也就是User对象保存成了一个静态变量,而在报错的地方,也都发现有使用过这原创 2012-10-06 21:12:23 · 6563 阅读 · 2 评论 -
Android之BaseExpandableListAdapter使用心得(QQ续一)
前段时间跟大家分享了ExpandableListView的使用,不知道的童鞋,可以去这里看一下:http://blog.csdn.net/weidi1989/article/details/7995552 但是我最近做那个QQ项目是遇到一个问题,如果给这个ExpandableListView添加动态从网上获取的数据呢?前面跟大家分享的时候,是用了静态的数据,很好处理。大组跟小组就原创 2012-10-06 18:28:34 · 14985 阅读 · 22 评论 -
Android之ActivityGroup实现Tab功能
android.app包中含有一个ActivityGroup类,该类是Activity的容器,可以包含多个嵌套进来的Activitys,这篇文章就是借助ActivityGroup可以嵌套Activity的功能来实现Tab功能。tab这种UI在很多的移动应用中可以看到,包括android、iphone、window phone7等移动终端上都有这样的应用,Tab这种UI方式具有小视图大容量的特点。原创 2012-09-17 22:14:24 · 3004 阅读 · 0 评论 -
Android之SlidingDrawer抽屉效果
SlidingDrawer是自SDK 1.5才新加入的,实现Launcher的抽屉效果。SlidingDrawer配置上采用了水平展开或垂直展开两种(android:orientation)方式,在XML里必须指定其使用的android:handle与android:content,前者委托要展开的图片(Layout配置),后者则是要展开的Layout Content。原创 2012-09-17 23:17:41 · 4415 阅读 · 3 评论 -
Android之原始的QQ好友分组实现
废话不多说,先看下效果: 这个就是类似抽屉的效果,这边做了三个抽屉,点击抽屉既可打开,同时关闭其他抽屉。 有人猜到怎么做的了吗? 其实很简单,就是三个 TextView + 三个Layout。 关键就在于控制Layout的显示、消失。同时也要注意Layoout的权重值weight。 下面看一下代码吧。 页面 main.xml :<Li原创 2012-09-18 12:49:17 · 3914 阅读 · 0 评论 -
Android之动态更新通知栏(QQ续四)
我们在QQ项目中实现了通知栏后台运行,以及来新消息提示,通常在消息通知时,我们经常用到两个组件Toast和Notification。特别是重要的和需要长时间显示的信息,用Notification就最合适不过了。当有消息通知时,状态栏会显示通知的图标和文字,通过下拉状态栏,就可以看到通知信息了,Android这一创新性的UI组件赢得了用户的一致好评,就连苹果也开始模仿了。其实有点类似于Windows原创 2012-10-09 23:43:20 · 16361 阅读 · 15 评论 -
Android之动画ViewPager小结(QQ续三)
点我下载该例源码--> 其实写完这个题目,我也觉得自己光荣的加入标题党了,我这里所谓的动画,其实只是上面的索引小图标的动画而已,先一下效果图吧,由于只是测试效果,我只是把背景颜色改变了而已,并没有添加实际的View。这里我就不介绍什么是ViewPager了,不知道的童鞋,百度一下吧,一大堆的。 好的,下面我们开始实现,先来看一下布局文件部分:<Line原创 2012-10-09 23:07:11 · 9019 阅读 · 4 评论 -
Android之三种实现自定义ProgressBar的方式
一、通过动画实现定义res/anim/loading.xml如下:<animation-list android:oneshot="false" xmlns:android="http://schemas.android.com/apk/res/android">原创 2012-09-18 12:44:31 · 4466 阅读 · 0 评论 -
Android之dip、dp、px、sp和屏幕密度
1. dip: device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA 推荐使用这 这个,不依赖像素。这里要特别注意dip与屏幕密度有关,而屏幕密度又与具体的硬件有关,硬件设置不正确,有可能导致dip不能正常显示。在屏幕密度为160的显示屏上,1dip=1px,有时候可能你的屏幕分原创 2012-09-03 21:05:21 · 2632 阅读 · 0 评论 -
Android之高仿微信聊天的界面
微信的聊天界面是挺漂亮的,每条消息都带一个气泡,给人一种很清新的感觉,其实实现起来也不是那么的难,下面我们就来实现一下。 老规矩,先贴上源代码:http://download.csdn.net/detail/weidi1989/4588782 再来看一下实现的效果图: OK,下面我们来看一下整个小项目的主体结构: 下面是Activity的代码原创 2012-09-22 21:50:46 · 22977 阅读 · 31 评论 -
android之listivew实现下拉刷新
新浪微博,和QQ空间里面,都有那个下拉刷新的效果,另很多人眼前一亮,细细分析,原理原来如此。在原作者的基础上,写了一些注释,和帮助大家更好的阅读理解,(可能其中有些地方注释不准,欢迎指正,谢谢)源代码下载地址:http://download.csdn.net/detail/weidi1989/4588246先来看一下效果图: 下面,就亮出关键代码,自定义的一个MyListV原创 2012-08-26 21:25:42 · 9263 阅读 · 10 评论 -
Android之布局属性重点
先明确几个概念的区别: padding和margin:都是边距的含义,关键问题得明白是什么相对于什么的边距。padding:是控件内容相对控件边缘的距离。 margin:是控件边缘相对父控件的距离。android:gravity:是对该view 内容的限定。比如一个button上面的text你可以设置该text在view的靠左,靠右等位置。该属性就干这个的。 a原创 2012-09-04 20:51:54 · 2034 阅读 · 0 评论 -
Android之动画主菜单
目前,用户对安卓应用程序的UI设计要求越来越高,因此,掌握一些新颖的设计很有必要,比如菜单,传统的菜单已经不能满足用户的需求。其中圆盘旋转菜单的实现就比较好,该菜单共分里外三层导航菜单.可以依次从外向里关闭三层菜单,也可以反向打开,并且伴有圆盘旋转的动画效果,首先,看下效果:源码下载:http://download.csdn.net/detail/weidi1989/4588807原创 2012-09-02 00:17:02 · 2148 阅读 · 0 评论 -
Android之布局属性归纳
第一类:属性值为true或falseandroid:layout_centerHrizontal 水平居中android:layout_centerVertical 垂直居中android:layout_centerInparent 相对于父元素完全居中android:layout_alignParentBottom 贴紧父元素的下边缘android:layout_alignP原创 2012-09-03 21:12:39 · 1634 阅读 · 0 评论 -
Android之粘性广播理解
BroadcastReceiver,作为一个广播接收者,因为android组件之间消息的传递基于intent,所以广播接收者想要接收什么类型的广播,将receiver标签下的intent-filter标签下的action标签的值置为那个广播类型即可,如 上面这段代码其实就注册了两个广播接收的类型,系统开机启动完成时的广播和原创 2012-09-25 13:56:12 · 14106 阅读 · 2 评论 -
Android之实现QQ好友分组(ExpandableListView)
在项目开发中,也许我们遇到过ListView中嵌套ListView,但谷歌建议我们最好别这样做,因此他们写好了一个ExpandableListView类,他继承ListView,可以实现ListView中嵌套ListView的效果,好了,废话不多说,先上效果图:点击下载源码:仿QQ好友分组源代码 主代码:public class ExListView extends A原创 2012-09-19 13:17:10 · 19100 阅读 · 16 评论 -
Android之小小图片加工厂
有时候我们在项目中,需要把图片加工一下,比如说加个圆角,或者打上马赛克或者水印,虽然不是很难的东西,但是没弄过,还是很纠结的,比如像我这样的小白,现在根据网上一些大牛的一些方法,总结了下面这个图片加工厂工具类,可能还有更多的需求,有需要的时候,再去网上找,继续完善中,,直接上跟大家分享代码,注释比较多,而且简单,我就不多说了,直接上跟大家分享代码:/** * 图片加工厂 * *原创 2012-10-19 09:26:46 · 4709 阅读 · 2 评论 -
Android之高仿腾讯微博
点我下载源码 导入源码到eclipse出现报错的童鞋注意:我用的是utf-8编码,因为腾讯的api是utf-8编码,其实我也不喜欢改来该去的! 国庆后,一直在忙,都没有什么时间做自己的事情,哎,上班的孩子伤不起啊!这个微博也是断断续续的,每天晚上10点下班回家弄一下,还是没有弄完整,只实现了几个功能,仅供有需要的朋友参考参考!我后续会继续完善和修改的,大家原创 2012-11-04 16:21:37 · 5384 阅读 · 14 评论 -
Android之背景颜色小知识(笔记)
一、ListView的item背景(自定义颜色)通常情况下,ListView的item背景用的是图片资源,下面跟大家分享一下使用颜色资源,即自定义一种颜色,当item聚焦、按压、选择的时候,可以显示我们自定义的颜色,好了废话不多说,直接分享代码:1.首先在drawable目录下面新建一个list_item_color.xml,自定义我们需要的颜色<shape xmlns:andro原创 2012-10-26 16:59:14 · 3854 阅读 · 0 评论