
Android入门教程AS重制版
本套课程主要针对Android初学者,抛弃以往Eclipse的IDE,采用Google推荐的Android studio来教学,从一个新的视觉来重构我们的知识点,笔者以一种新的教学方式来提高初学者到学习效率,视频+配套博文+实用案例+git代码管理+思维启发。
小巫技术博客
如果你想成功你不应该成为一个普通的可被随意替代的人你应该成为稀缺的不可替代的那类人
展开
-
Android Studio系列-Activity单元测试
前言上一篇讲的是如何在Android Studio中进行Junit单元测试,这篇来简单记录一下如何针对Activity进行单元测试。新建一个项目我这里新建一个UnitTestDemo项目新建LoginActivity、IndexActivtypackage com.devilwwj.unittestdemo;import android.app.Activity;import android.co原创 2016-02-22 18:16:27 · 9365 阅读 · 1 评论 -
Android Studio系列-单元测试入门篇
配置支持单元测试工程在Build Variant窗口内的Test Artifact中选择“Unit Tests“打开工程的build.gradle(Module:app)文件,添加JUnit4依赖,点击Gradle sync按钮。build.gradledependencies { compile fileTree(dir: 'libs', include: ['*.jar']) c原创 2016-02-22 17:52:49 · 3764 阅读 · 2 评论 -
Android技巧2:登录注册模块解决方案
前言几乎每个app都会有登录注册的功能,可以看看笔者开发的『南方周末新闻阅读器』,登录、手机注册、忘记密码这些入口,这些功能在app中要如何来实现呢?这个模块看似很简单,但要做好就需要考虑很多细节,比如对用户的输入的容错,操作的提示文案的设定,登录成功保存用户信息等等。业务流程图业务逻辑描述上一节的流程图已经很清晰的展现了登录注册的流程,这里继续用文字说明一下: 1. 点击进入个人中心或者需要用户原创 2016-01-24 22:13:14 · 17659 阅读 · 4 评论 -
Android技巧1:启动屏+新功能左右导航
前言很长一段时间没写博客了,再不写点东西真说不过去,把工作上的一些有价值的东西整理出来分享,在当下还有点时效性,不然迟早会烂在肚子里的。还记得之前小巫有个开源计划是想实现一个星期开发app,现在把它拾起来,计划没有实行起来跟我那懒惰的身躯有关,任何伟大的事情都需要强大的执行力才能实现,慢一点没关系,能创造点东西就是值得的事情。本篇博客先介绍一个app最常见的特性,就是新功能属性介绍和启动屏,一般会怎原创 2016-01-23 21:24:17 · 5010 阅读 · 2 评论 -
A022-列表容器之ExpandableListView
概述本节课介绍Android中可实现二级可展开收缩列表的ExpandableListView容器,笔者感觉它非常难用并且难理解,很多时候我们可能需要对控件进行扩展和定制,然而它不太方便扩展,它使用难点主要在数据结构上和对控件的事件监听,其他的实现方式类似ListView,下面会提供笔者在实际开发中使用到的案例。案例上面实现的效果可展开的二级列表,每个组项都可能有若干个子项,默认的E原创 2015-10-21 08:44:03 · 3632 阅读 · 3 评论 -
A021-列表容器之GridView
概述GridView是Android的另一个列表容器,用法也跟ListView类似,它的布局是一个网格,一行可以有多个项,并且整个视图可以滚动,我们常见的应用有手机中的图库、launcher里面的应用列表、类似微信多张图片等,总的来说,ListView主要应用于单列多行的列表,然而GridView主要应用于多行多列的网状布局。案例上面的运行结果就是GridView的典型效果,每个item是一张固定大原创 2015-10-19 23:27:27 · 2955 阅读 · 2 评论 -
A020-列表容器之ListView
概述前面介绍了Android UI中的五大布局容器,本节课介绍实际项目当中经常会用到的组件-ListView,它也是一个布局容器,它的每一项就是我们的列表项,每一个列表项都是一块独立的布局,我们可把数据填充到每一个列表项中,这样来完成数据的展示。案例上面的效果图就是我们在app中常见的列表,这里只是简单的示例,更加复杂的ListView项效果根据产品需求来做。常见的功能需求有: - 根据视觉稿搭建原创 2015-10-07 21:32:58 · 3523 阅读 · 4 评论 -
A019-布局之GridLayout
GridLayout网格布局,是Android4.0之后的API才提供的,算是一个相对新的布局容器,它的用法也很简单,类似LinearLayout可以指定方向,也可以指定控件占用多少行或列的空间。举例我们看一个例子: 这里我做了一个登录的一个布局,如果不使用GridLayout来进行布局,可能会有多个布局的嵌套才能实现这样的布局,相对比较麻烦,使用了GridLayout我们可以更加灵活的去控制对齐原创 2015-10-04 21:15:35 · 2480 阅读 · 1 评论 -
A018-布局之TableLayout
TableLayout表格布局,顾名思义像表格一样进行布局。我们通常配合TableRow一起使用,TableRow代表一行,有多少个TableRow就有多少行。eg:三行三列的布局<?xml version="1.0" encoding="utf-8"?><TableLayout xmlns:android="http://schemas.android.com/apk/res/android"原创 2015-10-04 20:08:04 · 2160 阅读 · 1 评论 -
A017-布局之FrameLayout
FrameLayout帧布局,是所有布局容器中最简单的一种,控件定义在FrameLayout中默认放置在左上角,定义在后面的控件会层叠在前面定义的控件之上,所以才会被称为帧布局。应用据我个人的开发经验,FramLayout主要用于比较简单的布局,最常见的一个应用场景就是”功能引导页”,就是在布局最外层遮罩一层半透明的视图,类似以下这种: 举例<?xml version="1.0" encoding原创 2015-10-04 17:00:50 · 2564 阅读 · 1 评论 -
A016-布局之RelativeLayout
RelativeLayout相对布局,如果我们想在app中实现复杂的布局,缺了它肯定不行的,前面介绍的LinearLayout适用于顺序排列的布局,然而RelativeLayout则适用于各种排列方式。XML Attribute上面都是我们适用RelativeLayout布局时可以用到的属性,具体我就不一个个去介绍每一个属性的用法,我们只需要知道每个View都可以根据parent和其他View来进行原创 2015-10-04 12:00:48 · 2077 阅读 · 1 评论 -
A015-布局之LinearLayout
前面已经给大家介绍完Android中所涉及到的一些资源文件,这节课开始进入用户界面的介绍,主要会包括”布局”和”基础控件”,我会先从布局开始讲起,然后逐个给大家将如何在实际开发中使用相关的控件实现应用当中的UI。Android中的布局容器LinearLayout线性布局是Android中最基本的一种布局,它只有两种布局方向: - vertical(竖直方向) - horizontal(纵向)eg原创 2015-10-04 10:31:32 · 2046 阅读 · 1 评论 -
A014-values资源
关于Android中使用的资源文件,前面陆陆续续也介绍了不少,这节课给大家介绍一下Android中使用到的“值资源”。可以看到上面的截图,在values文件夹下包含了很多个xml文件,每个文件代表一种值类型,里面定义了具体的类型资源。看一下在values下可以定义哪些资源文件:Bool在bools.xml中定义bool值语法:<?xml version="1.0" encoding="utf-8"?原创 2015-09-20 11:31:06 · 2677 阅读 · 0 评论 -
A013-animator资源
上一节课介绍了关于anim资源的知识点,这节课来给大家介绍animator资源,它跟anim资源同样是res下在资源,它是另外一种动画资源,上节课讲的是View Animation,是Android3.0之前使用较多的动画方式,然而Android 3.0推出之后,也带给我们一种新的动画实现方式——Property Animation(属性动画),它们有什么不一样的地方?不同点: - View An原创 2015-09-19 17:51:14 · 2734 阅读 · 1 评论 -
A012-anim资源
anim资源这里特指Android中的View Animation(视图动画),然而视图动画分为: - Tween Animation(补间动画) - Frame Animation(逐帧动画)Tween Animation文件路径:res/anim/filename.xml 这样的一个资源指向一个Animation对象 资源引用: - Java中引用:R.anim.filename -原创 2015-09-17 00:11:38 · 3090 阅读 · 0 评论 -
A010-menu资源
本节课讲Android中的菜单(menu)资源,这个也是我们在开发中可能经常用到的资源,它可以分为以下几种类型: - option menu(选项菜单) - sub menu(子菜单) - context menu (上下文菜单) - popup menu(弹出菜单)菜单在Android具有特殊性,几乎所有应用都离不开它,随着Android的发展,菜单也展示方式也跟着变化,我们初学它原创 2015-08-25 09:26:39 · 2517 阅读 · 0 评论 -
A011-raw资源
前面的笔者介绍过了assets资源,这节课介绍的是在res目录下的raw资源,路径为res/raw。处理assets资源外,我们程序中涉及到的资源文件都在res目录下,比如前面介绍过的drawable资源、menu资源,后面会陆续介绍其他资源类型。我们要如何获取raw下的资源,它跟assets目录的资源有什么异同,这个是我们Android开发者需要去关注的。 共同点 两者都不会被编译成二原创 2015-09-12 21:10:58 · 3169 阅读 · 0 评论 -
A009-layout资源
本节课继续讲Android中的资源文件-layout资源,一个界面的诞生离不开布局,我们Android开发者的大部分工作都是在搭建UI,一个产品的诞生,首先是由产品经理出线框图,再由设计师出视觉稿和标注图,然后我们开发人员才会根据标注图来搭建界面。本节课就来给大家简单介绍一下我们要用到的布局资源,先来看AS中布局资源长什么样子,如下图所示:图中的layout文件夹存放的就是我们程序中的布局文件,我们原创 2015-08-23 20:55:35 · 2067 阅读 · 0 评论 -
A008-drawable资源
关于drawable资源笔者之前有写过两篇文章: Android-自定义图像资源的使用(1) Android-自定义图像资源的使用(2) 这里笔者就不做过多的赘述,我们从实际开发的角度去理解这个知识点,如果单纯的只是学习知识点的使用是没有意义,我们要根据不同的需求和使用场景才能更好的把我们所学到的知识点运用在上面。要明确我们学习的目的就是为了应用,没有应用那么我们就只是在白费功夫,没有任何价值原创 2015-08-18 21:46:04 · 2592 阅读 · 0 评论 -
A007-assets资源
本节课开始讲Android中所用到的一些资源,首先来讲assets资源,它是Android的其中一种资源,跟raw和drawable资源有点不同,我们获取这个目录下的文件需要指定文件的路径,它里面的文件不会映射到R.java文件中,而res目录下的资源文件时会自动映射到R.java中,我们打包成apk的时候,assets目录下的文件不会被编译成二进制文件,而是直接打包到apk文件中。我们可以打包项目原创 2015-08-14 17:20:05 · 5072 阅读 · 4 评论 -
A006-AndroidManifest.xml解析
AndroidManifest.xml这个文件在Android中很重要,包含了应用程序的所有配置,包含SDK版本、应用权限、四大组件、扩展数据等等,它包含很多标签,每个标签都有具体的作用,标签下都会有不同的属性,也有通用的属性,不同的属性可能会影响我们应用程序的效果,所以我们详细了解具体标签的具体属性的使用场景是非常必要的,下面笔者会以做过的一个项目的完整配置来给大家系统介绍一下这个文件的使用方法原创 2015-08-11 08:28:01 · 6848 阅读 · 2 评论 -
A005-AS项目结构解析
上一节课给大家介绍了如何使用AS进行开发我们的第一个Android应用程序——HelloWorld,本节课来给大家系统介绍一下在Android Studio中Android的项目结构是怎样的,每一个文件夹和文件具体含义是什么,在我们Android程序中有什么作用,大家不妨来看看接下来的内容。我们创建了一个Android Project,打开就如下图所示: 我们选择Project视图,就会有以下的项原创 2015-08-08 15:29:21 · 4904 阅读 · 3 评论 -
A004-AS开发HelloWorld
前面的一节课已经给大家介绍了如何搭建Android开发环境。 本节课就来给大家介绍如何使用Android studio来开发我们第一个Android应用程序。以后每一个项目都会上传到git@OSC中,大家可以down下来参考。 (http://git.oschina.net/devilwwj/AndroidDevelopCourse)原创 2015-08-06 00:14:58 · 2836 阅读 · 1 评论 -
A003-Android开发环境搭建
上一节课给大家粗略的介绍了在实际开发当中会使用到的一些开发工具,本节课正式给大家介绍如何在我们的PC来大家开发环境,主要有两个步骤:配置JDK&SDK环境变量在Android Studio中配置project structure关于在windows下如何配置Android环境变量本节课不说,各位自己去百度,已经有很多总结得很好的文章,按照步骤来做就行。在Mac配置Android开发环境跟Win原创 2015-08-05 08:33:04 · 3443 阅读 · 5 评论 -
A002-开发工具介绍
关于Android的开发工具有很多,基本上都以在SDK中找到,下面我们逐个来看一下:首先我们使用的是Java语言进行Android应用的开发,那么Java的运行环境是少不了的了,我们需要在我们的PC中配置好jdk的环境变量,才能让我们的IDE跑起来。前面博文,小巫发表过一篇如何在macosx中配置java环境变量,如果大家不记得如何配置的话,可以参考那边博文,关于SDK的环境变量配置类似: Mac原创 2015-08-04 09:24:45 · 5269 阅读 · 0 评论 -
A001-课程介绍
课程目标针对人群:Android初学者&稍有基础的Android学员 课程要求:Java编程语言基础&面向对象思维 课程计划:大约70个课时 课程目标:熟练掌握Android基础知识和掌握主流开发框架的使用,熟悉app开发流程如果大家只是入门,可以学习本套课程,如果大家有相应的基础,可以通过本套课程进行巩固,学习一些新的东西。授课方式真实API教学 最新Android Studio开发工具原创 2015-08-04 08:22:44 · 3141 阅读 · 5 评论 -
Android入门实战AS重制版
由于Google官方已经明确表示不再支持Eclipse,这就意味着后面的开发使用Android Studio来进行开发是少不了的了,为了能跟上Google的脚步,小巫打算使用Android Studio重新录制新的课程,从零开始教大家如何来学习Android核心知识,优化之前使用Eclipse的课程,以一种让大家更易接受的方式来讲解课程。前面已经发了一篇关于后续博文撰写计划http://blog.c原创 2015-07-21 16:56:25 · 5884 阅读 · 34 评论