一.android系统被分为4个层次:1.最下层的是linux核心,包括多个驱动程序,提供了操作系统应该具备的核心功能;2.在linux核心之上,包括两个部分,一部分是Android Runtime(包括Dalvik虚拟机,和Core Libraries相当于java中的jdk)和LIBRARIES;3.是Application Framework这一层,该层包括多个Android开发框架(即各种管理器,如资源管理器等);4.Aplication层(该层既是我们工作的领域app)
二.基于组件的应用程序开发:这种方式使得Android开发变得简单化,把需要的功能封装成一个一个的组件,当开发app的时候使用对应的组件开发。Android组件:①Activity:Activity就相当于网站上的页面;②Service:Service主要负责在Android操作中耗时较长的操作,它没有图形化界面;③Content Provider:数据共享的一种方法,如果我的app有一个Content Provider,那么其他程序就可以访问我的app。④BroadcastReceiver:广播接收器,它的作用是监听手机中发生的事情,它是用来监听系统行为的(例如:手机进入低电量的时候,那么手机就会给应用程序发送一个广播,如果用户正在玩游戏,那么是不是应该在获取系统所发出的消息后,应该给予用户提示)
三.初识Activity:
1.Activity启动流程:①Activity启动之前,Android操作系统首先会去读取AndroidMannifest.xml文件,决定启动哪个Activity,然后生成默认Activity的对象,然后调用该对象的onCreate()方法(这些操作都是由Android操作系统来完成的),在onCreate()方法当中又会去读取布局文件main.xml,根据布局文件中的内容决定Activity该显示什么内容;
2.Activity与布局文件之间的关系:①RelativeLayout:就是相对布局,相对布局的容器范围之内的控件都使用相对布局的方式②TextView:即文本视图,它用于显示文本;
3.在Activity当中获取代表控件对象:在Activity中有TextView对象,而在main.xml中有<TextView>控件的声明,那么就可以说该TextView对象就是代表控件的对象,当onCreate()方法中要读取某个布局文件的时候,此时Activity生成该布局文件中控件所对应的对象,我们通过findViewById()来获取代表该控件的对象;又因为findViewById()返回的全是View类型的对象,所以我们必须向下转型成对应的对象类型;我们可以在布局文件中控制控件的属性,同样可以在Activity中控制属性;
三.
1.View的基本概念:在Activity中显示出来的控件,在android技术体系中就是View,View是所有控件类的父类,每一种控件都对应一个类,这些类通通都是View的子类;
2.在Activity当中获取代表View的对象:findViewById();
3.设置View的属性:一种是在布局文件中,一种是在Activity中;
4.为View设置监听器
5.为控件绑定监听器:①获取代表控件的对象;②定义一个类,实现监听器接口;③生成监听器对象;④为控件绑定监听器对象
四.
1.控件布局的基本概念:控件布局就是指控件在Activity当中的位置,大小,颜色以及其他样式属性的方法。使用布局文件完成控件布局,在java代码中完成控件布局。有两种方式:①在布局文件中完成控件布局;②在java代码中完成控件布局
2.布局方法分类:LinearLayout(线性布局),RelativeLayout(相对布局)在实际开发中,相对布局是我们使用最多的。在线性布局中,每个控件都会独占一行,或者一列,和控件内容的长度无关。
五.长度单位与内外边距
1.距离单位之px:即像素,例如我们所说的屏幕分辨率是480*320也就是说,在横向屏幕被分成了480份,纵向被分成了320份。而整个屏幕被分成了480*320个格子,而这每一个小格子就是一个像素;
2.距离单位之dp:dpi即每英寸上点的个数,也就是屏幕显示的细腻程度。dpi值越高屏幕分辨率越高,反之屏幕分辨率越低;dp=dip(Device Independent pixels)换算公式:px=dp*(dpi/160)在dpi为160的屏幕上:1dp=1px
3.距离单位之sp;scaled pixels(可缩放的像素)通常用于指定字体的大小,当用户修改手机显示字体时,sp会随之改变。
4.控件的外边距和内边距:margin和padding
六.
1.单选按钮的基本概念:单选按钮与多选按钮之间的区别在于在一组按钮中只能有一个能被选中;
2.RadioGroup与RadioButton
3.OnClickListener与OnCheckedChangeListener监听器
4.ImageView
5.LinearLayout布局的嵌套
6.layout_weight:子控件未能占满父控件的空间,layout_weight的值用于指定空闲空间的分配比例
7.RelativeLayout:相对布局是通过指定当前控件与兄弟控件或者是父控件之间的相对位置,从而达到控制控件位置的目的。RelativeLayout布局的新属性(Android 4.2之后)
七.
1.TimePicker;2.DatePicker;3.ProgressBar;4.RatingBar

android开发之路01的更多相关文章

  1. android开发之路09(浅谈SQLite数据库01)

    1.SQLite数据库: SQLite 是一个开源的嵌入式关系数据库,实现自包容.零配置.支持事务的SQL数据库引擎. 其特点是高度便携.使 用方便.结构紧凑.高效.可靠. 与其他数据库管理系统不同, ...

  2. Toast显示图文界面——Android开发之路1

    Toast的多种使用方法 Toast其实是一个功能特别强大的组件,不仅仅可以吐司一个文本内容,还可以吐司图片以及图文混排的界面.具体用法如下: 第一种:简单的纯文本内容的吐司: Toast.makeT ...

  3. 菜单(Menu)的三中创建方式——Android开发之路2

    菜单的三种创建方式 一.OptionsMenu---选项菜单 Android应用中的菜单默认是隐藏的,只有当用户点击手机上的MENU键,系统才会显示菜单.这种菜单叫做选项菜单(Options Menu ...

  4. Android中隐藏顶部状态栏的那些坑——Android开发之路3

    Android中隐藏顶部状态栏的那些坑 先看看常规的隐藏状态栏的方法: 方法一: @Override protected void onCreate(Bundle savedInstanceState ...

  5. Android中点击隐藏软键盘最佳方法——Android开发之路4

    Android中点击隐藏软键盘最佳方法 实现功能:点击EditText,软键盘出现并且不会隐藏,点击或者触摸EditText以外的其他任何区域,软键盘被隐藏: 1.重写dispatchTouchEve ...

  6. Intent的七大组件——Android开发之路5

    ------Intent------ Android中三个核心组件——Activity.Services.BroadCastProvider都是通过Intent传递参数. startActivity( ...

  7. android开发之路12(android四大组件&Fragment&AsyncTask类)

    一.Activity组件1.简介:Activity组件是Android四大组件之一,通常一个Activity相当于一个用户界面,我们可以通过加载布局文件将Android提供的各种控件及自定义控件显示到 ...

  8. android开发之路13(实际开发常见问题及解决办法ING)

    1.DDMS下无法浏览SDcard? 在做音乐播放器的时候,想通过eclipse中的DDMS视图将音频文件push到sd卡中,发现总是报错 :Failed to push selection: Rea ...

  9. android开发之路11(用SharedPreferences存储数据)

    Android平台给我们提供了一个SharedPreferences类,实际上SharedPreferences处理的就是一个key-value(键值对),它是 一个轻量级的存储类,特别适合用于保存软 ...

随机推荐

  1. [Bhatia.Matrix Analysis.Solutions to Exercises and Problems]ExI.2.6

    If $\sen{A}<1$, then $I-A$ is invertible, and $$\bex (I-A)^{-1}=I+A+A^2+\cdots, \eex$$ aa converg ...

  2. Kettle定时执行(ETL工具)【转】

    1,Kettle跨平台使用.    例如:在AIX下(AIX是IBM商用UNIX操作系统,此处在LINUX/UNIX同样适用),运行Kettle的相关步骤如下:    1)进入到Kettle部署的路径 ...

  3. POJ3279 Fliptile 枚举+简单搜索

    题意:一个矩阵,每个点1或0,然后每次翻一个点,它周围上下左右(包括自己)1->0,0->1,问最少翻几次可以矩阵全是0,忽略题目说的字典序 分析:枚举第一行所有的情况,然后下面几行也随之 ...

  4. (二)GameMaker:Studio ——使用等高图生成3D地形

    上一篇,我们讲解了GM中导入模型的方法,这节我们来讲地形. 源文件地址:http://pan.baidu.com/share/link?shareid=685772423&uk=2466343 ...

  5. CodeForce---Educational Codeforces Round 3 The best Gift 解题报告

    对于这题笔者认为可以用数学排列来算,但是由于笔者很懒所以抄了一段大神的代码来交个大家了, 这位大神的基本想法就是通过记录各类书的数量,再暴力破解: 下面贴出这位大神的代码吧: #include< ...

  6. codeforce 606A - Magic Spheres

    题意:a,b,c三种球,能把俩个一样的球变成另一颜色不一样的球.给你目标x,y,z,问能否经过变化至少达打目标. #include<iostream> #include<stdio. ...

  7. leetcode@ [134] Gas station (Dynamic Programming)

    https://leetcode.com/problems/gas-station/ 题目: There are N gas stations along a circular route, wher ...

  8. 【数论】Baby Step Giant Step

    被数论怒虐了一天 心力憔悴啊 感觉脑细胞已经快消耗殆尽了>_< 但是今天还是会了很多之前觉得特别神的东西 比如BSGS 之前听了两遍 好像都因为听得睡着了没听懂-.- 今天终于硬着头皮学会 ...

  9. 可以使用Markdown了?

    园子果然领先 1.标题类 一级标题 二级标题 三级标题 四级 六级 怎么可以用#号?上传上去看看 2.换行 第一行 换一行 在换一行 3.多个下划线 the_odd_egg odd 斜体用星号 4.删 ...

  10. [转]各种字符串Hash函数比较

    转自:https://www.byvoid.com/zht/blog/string-hash-compare 常用的字符串Hash函数还有ELFHash,APHash等等,都是十分简单有效的方法.这些 ...