Android提高21篇之三:SurfaceView与多线程配合使用
分类标签: SurfaceView 线程 Canvas
上节中简单介绍了SurfaceView的基本使用方法,本节主要讲解SurfaceView与多线程的混搭。SurfaceView与多线程混搭,是为了防止动画闪烁而实现的一种多线程应用。android的多线程用法与JAVA的多线程用法完全一样,本文不做多线程方面的介绍了。直接讲解SurfaceView与多线程的混合使用,即开一条线程专门读取图片,另外一条线程专门绘图。阅读全文 »
Android提高21篇之二:SurfaceView的基本使用方法
分类标签: SurfaceView
上次介绍MediaPlayer的时候稍微介绍了SurfaceView,SurfaceView由于可以直接从内存或者DMA等硬件接口取得图像数据,因此是个非常重要的绘图容器,这次我就用两篇文章来介绍SurfaceView的用法。网上介绍SurfaceView的用法有很多,写法也层出不同,例如继承SurfaceView类,或者继承SurfaceHolder.Callback类等阅读全文 »
Android提高21篇之一:MediaPlayer
分类标签: 视频 音频
本文介绍MediaPlayer的使用。MediaPlayer可以播放音频和视频,另外也可以通过VideoView来播放视频,虽然VideoView比MediaPlayer简单易用,但定制性不如用MediaPlayer,要视情况选择了。MediaPlayer播放音频比较简单,但是要播放视频就需要SurfaceView。SurfaceView比普通的自定义View更有绘图上的优势,它支持完全的Open阅读全文 »
详解Android ActionBar之三:实现ActionBar Tabs标签的切换
分类标签: Action Bar
上一节中讲了ActionBar添加Tabs标签和下拉导航,本节主要讲解如何实现切换ActionBar的Tabs标签。 Activity代码:... 涉及的布局文件action_bar_tabs.xml代码为:... 布局文件action_bar_tab_content.xml:...阅读全文 »
详解Android ActionBar之二:ActionBar添加Tabs标签和下拉导航
分类标签: Action Bar
上一节所讲内容为ActionBar概述与创建,本节主要讲解ActionBar如何添加Tabs标签和下拉导航。 一、添加标签 Tabs 在ActionBar中实现标签页可以实现android.app.ActionBar.TabListener ,重写onTabSelected、onTabUnselected和onTabReselected方法来关联Fragment。阅读全文 »
详解Android ActionBar之一:ActionBar概述与创建
分类标签: Action Bar
前面一个系列中讲的是Fragment的内容,Android 3.0中除Fragment外,Action Bar同样也是一个很重要的知识点。我们经常使用Action Bar来替代传统的标题栏。如果是Android平板设备的话,屏幕越大,通过Action Bar设计的标题可以展示的内容越丰富,操作更加便捷。 Action Bar主要功能包含: 1. 显示选项菜单。阅读全文 »
详解Android Fragment之六:Fragment实例
分类标签: Fragment Activity Layout
上一节讲了Fragment与Activity的通信,本节将给大家演示Fragment的实例。 把条目添加到动作栏 你的fragment们可以向activity的菜单(按Manu键时出现的东西)添加项,同时也可向动作栏(界面中顶部的那个区域)添加条目,这都需通过实现方法onCreateOptionManu()来完成。阅读全文 »
详解Android Fragment之五:Fragment与Activity的通信
分类标签: Fragment Activity
Fragment与Activity的通信 尽管fragment的实现是独立于activity的,可以被用于多个activity,但是每个activity所包含的是同一个fragment的不同的实例。Fragment可以调用getActivity()方法很容易的得到它所在的activity的对象,然后就可以查找activity中的控件们(findViewById())。阅读全文 »
详解Android Fragment之四:Fragment的管理
分类标签: Fragment
上一节中介绍了Fragment界面的实现,本节讲讲如何管理Fragment。 Android中管理Fragment需要使用FragmentManager,怎样得到它呢?在Activity中调用方法getFragmentManager()即可。你可以用FragmentManager来做以下事情: 1、使用方法findFragmentById()或findFragmentByTag()...阅读全文 »
详解Android Fragment之三:Fragment界面的实现
分类标签: Fragment Activity
上一节讲的是Fragment的创建和生命周期,本篇继续讲解Fragment界面的实现。 一、为fragment添加用户界面 Fragment一般作为activity的用户界面的一部分,把它自己的layout嵌入到activity的layout中。 要为fragment提供layout,你必须实现onCreateView()回调方法,然后在这个方法中返回一个View对象,这个对象是fragment的阅读全文 »
详解Android Fragment之二:Fragment的创建和生命周期
分类标签: Fragment
上一节中讲了Fragment概述及用法,本节继续讲解Fragment的创建和生命周期。 Fragments的生命周期 每一个fragments 都有自己的一套生命周期回调方法和处理自己的用户输入事件。 对应生命周期可参考下图:... 创建片元(Creating a Fragment) 要创建一个fragment,必须创建一个fragment的子类(或是继承自它的子类)。阅读全文 »
详解Android Fragment之一:Fragment概述及用法
分类标签: Fragment
Fragment一般是宿主Activity UI的一部分或一种行为,作为Activity的整个View Hierarchy的一部分嵌入。我们可以将多个Fragment组合到一个Activity中创建一个多面界面,也可以在多个Activity中重用一个Fragment。 Fragment概述 我们可以把Fragment视为模块化的一段Activity,它具有自己的生命周期...阅读全文 »
详解Android Handler的使用
分类标签: Handler 线程
我们进行Android开发时,Handler可以说是使用非常频繁的一个概念,它的用处不言而喻。本文就详细介绍Handler的基本概念和用法。 Handler的基本概念 Handler主要用于异步消息的处理:当发出一个消息之后,首先进入一个消息队列,发送消息的函数即刻返回,而另外一个部分逐个的在消息队列中将消息取出,然后对消息进行出来,就是发送消息和接收消息不是同步的处理。阅读全文 »
Android系统启动过程全解析
分类标签: Android框架
Android系统是一款基于Linux的移动操作系统,那么Android是如何启动起来的呢?本文就详细阐述Android系统的启动过程。 从内核之上,我们首先应该从文件系统的init开始,因为 init 是内核进入文件系统后第一个运行的程序,通常我们可以在linux的命令行中指定内核第一个调用谁,如果没指定那么内核将会到/sbin/、/bin/ 等目录下查找默认的init,如果没有找到那么就报告出阅读全文 »
Android Touch事件原理加实例分析
分类标签: 触屏事件
Android中有各种各样的事件,以响应用户的操作。这些事件可以分为按键事件和触屏事件。而Touch事件是触屏事件的基础事件,在进行Android开发时经常会用到,所以非常有必要深入理解它的原理机制。 Android Touch事件原理描述 一个最简单的屏幕触摸动作触发了一系列Touch事件:...阅读全文 »
最全面的Android Intent机制讲解
分类标签: Intent Activity
Intent,英文原意是“目的、意向”等。Android所提供的Intent机制用来协助应用间进行交互和通讯,说的更准确一点,Intent 不仅可用于应用程序之间,也可用于应用程序内部的 Activity/Service 之间的交互。对于大型软件开发经验较少的程序员来说,这可能是一个不太容易理解的抽象概念,因为它与我们平常使用的简单函数调用,或者通过库调用接口的方式不太一样。阅读全文 »
跟Android初学者分享几点经验
分类标签: Android开发经验
刚学Android开发的人肯定想知道过来人是怎样入门的,有哪些经验,怎样能少走弯路。本文就跟大家分享一位Android开发者的入门经验,写的条理很清晰,真正讲出了自己的学习过程,尽管每个人的学习方法和习惯等不同,但也可以从中学到东西。 下面就是他的学习方法分享:...阅读全文 »
如何使用Android Fragment
分类标签: Fragment
fragment通常是宿主Activity UI的一部分,被作为activity整个view hierarchy的一部分被嵌入。添加fragmet到activity Layout有两种方法。如下所述。 一、在Activity的Layout文件中声明fragment 你可以像为View一样,为fragment指定layout属性(sdk3.0以后)。阅读全文 »
详解Android shape的使用方法
分类标签: xml
Android开发者在编程过程中经常要涉及到美工方面的工作,而美工对开发者而言往往是不太擅长的。本文就从简洁易用的角度跟大家分享shape的使用方法。 Android中常常使用shape来定义控件的一些显示属性,在看了关于shape的一些用法技巧后,对shape有了大体的了解,下面进行大致的总结。阅读全文 »
Android学习指南之四十六:用户界面View之视图切换组件ViewAnimator
分类标签: 动画
上一节中为大家讲解了ImageSwitcher和TextSwitcher两个视图切换组件,本节再来介绍另一个视图切换组件--功能更丰富的ViewFlipper,使用它能够在任意的视图与视图之间切换。 讲解ViewFlipper之前先简单了解下ViewAnimator。在制作视图动画时会用到这个ViewAnimator类。下面这幅图基本说明了ViewAnimator的作用。阅读全文 »