Android入门教程(四)
关注我,每天都有优质技术文章推送,工作,学习累了的时候放松一下自己。
本篇文章同步微信公众号
欢迎大家关注我的微信公众号:「醉翁猫咪」
学习Android要掌握Android程序结构,和通信技术,和如何搭建Android开发环境,那么我之前有发过《Android
Studio系列教程---下载与安装》《Android
Studio系列教程---基本设置与运行》,可以好好看看。
对于小白什么安卓,说到安卓不了解的人就说:“哦,就是手机啊!”,如果作为程序员千万可别这么说,否则会被说的哦,android可以看到的是我们初次进入IT界时,它那Logo的标志,一个类似机器人一样的标志,一个绿色的机器人。看到绿色机器人就指Android了,Android系统是一个轻薄短小,功能强大的移动系统,并且是开放性的。
通信技术可以用1G,2G,3G,4G表示,1到4是通信技术发展的过程,Android体系结构包含5个,Applications 应用层,Application Framework 应用框架层(Java写的),函数库层(C写的),Android Runtime(Android运行时),Linux Kernel(驱动层)。
你们知道虚拟机,但知道Dalvik吗?哈哈,其实就是虚拟机(Dalvik)。我们知道安卓中有自带的虚拟机下载,那么你了解虚拟机吗?虚拟中过程:.java-.class-.dex-.odex,基于寄存器架构,那么你可以对比一下JVM,JVM的过程:.java-.class-.jar,基于栈,寄存器存储快>栈。
了解一下《Android快捷键》,之前发的,最好用的就是:快捷键:Ctrl
+ Alt + L,但是与QQ有冲突,格式化代码。接下来重点在布局和控件的使用,那么我之前写了《Android入门教程三》就是介绍布局的。
为了适应不同的界面风格,Android系统提供我们五种常用布局,分别是LinearLayout(线性布局),RelativeLayout(相对布局),FrameLayout(帧布局),TableLayout(表格布局),AbsoluteLayout(绝对布局)。
介绍属性:vertical表示线性布局垂直显示,horizontal水平显示,layout_centerInParent,设置当前控件位于父布局的中央位置,layout_alignParentTop,设置当前控件是否与父控件顶端对齐,foreground,设置帧布局容器的前景图像,foregroundGravity,设置前景图像显示位置,等等
当我们创建项目时,我们会发现Application Name ,注意的会看到一些单词,application name 应用名称,company domain包名限定符,Project location项目存放的目录位置,Package Name为应用的包名。
在app/build.gradle中,重点build.gradle文件,applicationId为创建新项目指定的包名,其他看单词意思就懂了。
之前的一篇《闲谈Android中的@和?符号的引用区别》其中@用于系统和我们在项目中添加的一些固有资源,?符号用于引用当前主题中定义的一些属性值,那么有人问什么是id呢?id是为了给View定义唯一标识符,如:android:id="@+id/button1"。有时间复习一下
从入门到熟悉!
坚决不放弃!
喜欢本文的朋友们
欢迎长按下图关注订阅号醉翁猫咪
收看更多精彩内容
Android入门教程(四)的更多相关文章
- 无废话ExtJs 入门教程四[表单:FormPanel]
无废话ExtJs 入门教程四[表单:FormPanel] extjs技术交流,欢迎加群(201926085) 继上一节内容,我们在窗体里加了个表单.如下所示代码区的第28行位置,items:form. ...
- PySide——Python图形化界面入门教程(四)
PySide——Python图形化界面入门教程(四) ——创建自己的信号槽 ——Creating Your Own Signals and Slots 翻译自:http://pythoncentral ...
- Android入门教程(二)
Hello World 项目 首先当我们启动Android Studio的虚拟机时,可以看到第一个项目Hello World,那么虚拟机中的Hello World!是如何书写的呢? 看看虚拟机运行结果 ...
- Elasticsearch入门教程(四):Elasticsearch文档CURD
原文:Elasticsearch入门教程(四):Elasticsearch文档CURD 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接: ...
- RabbitMQ入门教程(四):工作队列(Work Queues)
原文:RabbitMQ入门教程(四):工作队列(Work Queues) 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https:/ ...
- linux.linuxidc.com - /2011年资料/Android入门教程/
本文转自 http://itindex.net/detail/15843-linux.linuxidc.com-%E8%B5%84%E6%96%99-android Shared by Yuan 用户 ...
- JasperReports入门教程(四):多数据源
JasperReports入门教程(四):多数据源 背景 在报表使用中,一个页面需要打印多个表格,每个表格分别使用不同的数据源是很常见的一个需求.假如我们现在有一个需求如下:需要在一个报表同时打印所有 ...
- WebGL入门教程(四)-webgl颜色
前面文章: WebGL入门教程(一)-初识webgl WebGL入门教程(二)-webgl绘制三角形 WebGL入门教程(三)-webgl动画 颜色效果图: 操作步骤: 1.创建HTML5 canva ...
- Android入门教程之我见
真正的从安卓入门学习到实际工作也差不多一年时间了,也做了几个项目.在这期间经历了一开始学习Android的基本知识后仍旧无从下手,不知道如何开始开发一个app,到现在也开始学会注意Android架构的 ...
随机推荐
- NET Core 3.0 AutoFac替换内置DI的新姿势
原文:NET Core 3.0 AutoFac替换内置DI的新姿势 .NET Core 3.0 和 以往版本不同,替换AutoFac服务的方式有了一定的变化,在尝试着升级项目的时候出现了一些问题. 原 ...
- .NET 使用 ILRepack 合并多个程序集(替代 ILMerge),避免引入额外的依赖
原文:.NET 使用 ILRepack 合并多个程序集(替代 ILMerge),避免引入额外的依赖 我们有多种工具可以将程序集合并成为一个.比如 ILMerge.Mono.Merge.前者不可定制.运 ...
- XXL-JOB使用命令行的方式启动python时,日志过多导致阻塞的解决方式
一.Runtime.getRuntime().exec()的阻塞问题 这个问题也不能算是XXL-JOB的问题,而是Java的Runtime.getRuntime().exec()造成的,Buffere ...
- 2019 2345网址导航java面试笔试题 (含面试题解析)
本人5年开发经验.18年年底开始跑路找工作,在互联网寒冬下成功拿到阿里巴巴.今日头条.2345网址导航等公司offer,岗位是Java后端开发,因为发展原因最终选择去了2345网址导航,入职一年时 ...
- Python 第三方日志框架loguru使用
解决中文乱码问题 项目地址 github: https://github.com/Delgan/loguru 文档:https://loguru.readthedocs.io/en/stable/in ...
- Vue.js详解
vuejs介绍 Vue.js是当下很火的一个JavaScript MVVM库,它是以数据驱动和组件化的思想构建的.相比于Angular.js,Vue.js提供了更加简洁.更易于理解的API,使得我们能 ...
- 纯css实现省略号,兼容火狐,IE9,chrome
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Hive性能优化【核心思想、运行模式、并行计算】
一.核心思想 把HQL当做MapReduce程序去优化. 注意,以下SQL不会转为MapReduce执行: 1.select仅查询本表字段. 2.where仅对本表字段做条件过滤. 二.启动Hive ...
- Linux 里的 2>&1 究竟是什么
原文 我们在Linux下经常会碰到nohup command>/dev/null 2>&1 &这样形式的命令.首先我们把这条命令大概分解下: 首先就是一个nohup:表示当 ...
- Seata 动态配置订阅与降级实现原理
Seata 的动态降级需要结合配置中心的动态配置订阅功能.动态配置订阅,即通过配置中心监听订阅,根据需要读取已更新的缓存值,ZK.Apollo.Nacos 等第三方配置中心都有现成的监听器可实现动态刷 ...