android框架

Android 布局

旧时模样 提交于 2019-12-25 01:21:18
转自:http://www.cnblogs.com/chiao/archive/2011/08/24/2152435.html Android布局是应用界面开发的重要一环,在Android中,共有五种布局方式,分别是:LinearLayout (线性布局),FrameLayout(框架布 局),AbsoluteLayout(绝对布局),RelativeLayout(相对布局),TableLayout(表格布局)。 在windows下有预览功能,可以在xml中查看布局的样式,在linux中无。 一、LinearLayout 线性布局,这个东西,从外框上可以理解为一个div,他首先是一个一个从上往下罗列在屏幕上。每一个LinearLayout里面又可分为垂直布局(android:orientation="vertical")和水平布局(android:orientation="horizontal" )。当垂直布局时,每一行就只有一个元素,多个元素依次垂直往下;水平布局时,只有一行,每一个元素依次向右排列。 linearLayout中有一个重要的属性 android:layout_weight="1",这个weight在垂直布局时,代表行距;水平的时候代表列宽;weight值越大就越大。 线形布局中预览和真机中完全一样。 TextView占一定的空间,没有赋值也有一定的宽高,要特别注意

Android开发-之五大布局

岁酱吖の 提交于 2019-12-25 01:20:51
  在html中大家都知道布局是什么意思了,简单来说就是将页面划分模块,比如html中的div、table等。那么Android中也是这样的。Android五大布局让界面更加美化,开发起来也更加方便。当然布局方式不一样应用的地方也不一样,当然了有的布局方式也是可以相互转换和嵌套使用的。它们都各有各的优缺点,具体页面要怎么布局还是得看开发需求,但是用的最多的还是相对布局、线性布局以及相对布局和线性布局的嵌套使用。当然,我说的是安卓,并没有指定是安卓手机,比如平板、智能家居(电视...)很多都是Android系统。那么下面我们就具体来讲Android开发中的五大布局,我以一个简单的拨号器为例。 一、Android五大布局分类   1、相对布局   2、绝对布局   3、线性布局   4、表格布局   5、帧布局 二、具体布局的使用   1、相对布局(RelativeLayout)   在我们创建Android项目时,默认的activity_main.xml这个文件默认的布局方式就是RelativeLayout相对布局。那么相对布局就是按照各子元素之间的位置关系完成布局。在此布局中的子元素里与位置相关的属性将生效。可以这样理解:在安卓屏幕中的父元素就是整个屏幕,而子元素就是那些按钮、文本框之类的东西。   相对布局是Android布局中最为常用的布局之一,也是最强大的布局:     1

Android布局大全

冷暖自知 提交于 2019-12-25 01:20:04
Android的界面是有布局和组件协同完成的,布局好比是建筑里的框架,而组件则相当于建筑里的砖瓦。组件按照布局的要求依次排列,就组成了用户所看见的界面。 所有的 布局方式都可以归类为ViewGroup的5个类别,即ViewGroup的5个直接子类。其它的一些布局都扩展自这5个类。 1. LinearLayout ,线性布局方式   这种布局比较常用,也比较简单,就是每个元素占一行,当然也可能声明为横向排放,也就是每个元素占一列。   LinearLayout按照垂直或者水平的顺序依次排列子元素,每一个子元素都位于前一个元素之后。如果是垂直排列,那么将是一个N行单列的结构,每一行只会有一个元素,而不论这个元素的宽度为多少;如果是水平排列,那么将是一个单行N列的结构。如果搭建两行两列的结构,通常的方式是先垂直排列两个元素,每一个元素里再包含一个LinearLayout进行水平排列。   LinearLayout中的子元素属性android:layout_weight生效,它用于描述该子元素在剩余空间中占有的大小比例。加入一行只有一个文本框,那么它的默认值就为0,如果一行中有两个等长的文本框,那么他们的android:layout_weight值可以是同为1。如果一行中有两个不等长的文本框,那么他们的android:layout_weight值分别为1和2

android界面布局

我只是一个虾纸丫 提交于 2019-12-25 00:26:51
android界面布局 6种基本摆放控件的规则 框架布局 FrameLayout,也叫帧布局 该布局上的控件放在左上角,按照放置的前后顺序,逐一层叠,后面的布局会遮盖住前面的 线性布局 LinearLayout 按照水平或者垂直两种方式排布,在布局文件中使用 android:orientation 来决定方向 相对布局 RelativeLayout 相对于其他控件位置,通常是指定id关联其他控件,以上下左右对齐等方式排列 属性 描述 layout_alignParentXXX:Top,Bottom,Left,Right 与父控件平齐 layout_centerInXXX:Parent,Horizontal,Vertical 在父控件的中间 layout_alignXXX:Top,Bottom,Left,Right=@id/ 与ID为xxx控件平齐 layout_XXX:above,blow,toRightOf,toLeftOf=@id/ 绝对布局 AbsolutelLayout 以屏幕左上角为坐标原点(0,0),直接指定具体坐标为位置,一般少用,因为存在兼容性问题 直接指定 layout_x 和 layout_y 表格布局 TableLayout 将布局页面划分为行列的单元格,使用 <Tablerow></TableRow> 标记单元格的一行 全局属性 也就是列属性

如何做一名有高度的移动开发工程师?10年大厂Android开发者经验总结

。_饼干妹妹 提交于 2019-12-24 18:26:43
2019年对应程序员来说,是一个多灾的年份,很多公司都进行了不同比例的优化和裁员。最近是找工作的高峰期,从很多同学的面试经历来看,现在只会单纯写业务代码的人找工作特别难,比如很多大厂的面试官都会针对性能优化的细节,考察你是否真正搞懂底层的机制和原理。环境的要求越来越高,所以我们也要积极转变,踏踏实实的学习。 如何成为一名 Android 开发高手 ,是很多Android开发人员的终极理想。作为一名Android开发工程师,除了需要掌握基础的Android知识,能够熟悉的进行应用开发之外,了解Android 系统层、Linux 内核层再到硬件层的优化路径,也是想要成为 Android 开发高手的必备技能。 之前,我写了一篇《 2019总结:Android 寒冬难前行?—我的进阶之路,送给正在迷茫的你! 》的文章,文章中将Android开发进行了初级、中级、高级和专家的划分,当时思考的是层层递进,并不是说掌握某项技能你就是专家了。 做一名有高度的工程师 作为一名技术工程师,不管你是从事前端开发还是后端开发,T 型技术人才理论都比较适合,所谓的“T”指的是横向和纵向两个维度。纵向解决的是深度问题,横向解决的是广度问题。并且我比较推崇先有深度再有广度,因为技术都是一通百通的。 作为一个有高度的移动开发工程师,需要能纵向深入,也要能横向全面地思考每一个问题。比如说

Cordova 学习笔记

你说的曾经没有我的故事 提交于 2019-12-23 18:10:14
日期: 2019 年 12 月 02 日 Cordova 学习笔记 1、概述 Cordova 是什么 Apache Cordova是一个开源的使用 HTML + CSS + JavaScript 做跨平台开发的移动开发框架 Cordova 的特点 它提供了一组用来调用手机设备(Android、IOS、Windows phone)的原生 API,让我们可以通过 JavaScript 调用原生代码,带来 Web 开发不曾有的原生体验; 可以将我们的 Web 程序包裹进原生的 APP 壳(WebView)中,也就是 Hybrid App ( 混合模式移动应用 ) Cordova 架构 这是cordova应用程序的几个组成部分。下面这幅图是cordova应用架构的高级视图: 包括以下几个部分: WebView —— 一个可以展示 web 页面的组件 Web APP —— 这是你应用程序代码存在的地方 插 件 —— 可以让你的应用程序访问设备功能:电源、相机、联系人等 2、使用 通过使用 cordova命令行工具(CLI),我们可以创建 cordova 应用并发布他们到不同的原生移动平台,下面来具体操作 安装 安装 Node.js , 装好之后我们就可以在命令行使用 node 和 npm 安装 cordova ,使用 Node.js 的 npm 工具 在 OS X 和 Linux 上: $

移动无线测试技能树

混江龙づ霸主 提交于 2019-12-23 11:04:32
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 常用IDE Android ADT Android Studio iOS Xcode Common Atom Sublime Text Vim Visual Studio Code 基础知识 Android 掌握Android开发基础技能 iOS 掌握iOS开发基础技能 Web 掌握web开发基础技能 API 掌握api相关基础知识 测试 掌握基本的测试用例设计方法和思想 常见应用模式 Native Hybrid H5 App ReactNative 常用工具 Android android sdk manager adb ddms ant aapt emulator Genymotion hierarchyviewer monitor monkey monkeyrunner uiautomatorviewer iOS lldb iExplorer libimobiledevice 套件 codesign instruments xcodebuild atos xcrun 常用UI Automation框架 Android Instrumentation uiautomator2.0 Athrun Robotium Monkey Monkeyrunner uiautomator Selendroid

Android 之窗口小部件详解--App Widget

纵然是瞬间 提交于 2019-12-23 10:17:03
1 App Widget简介 App Widget是应用程序窗口小部件(Widget)是微型的应用程序视图,它可以被嵌入到其它应用程序中(比如桌面)并接收周期性的更新。你可以通过一个App Widget Provider来发布一个Widget。 本文参考 Android官方文本 ,先介绍App Widget的主要组件,然后再以示例来详细说明。 2 App Widget主要的相关类介绍 2.1 AppWidgetProvider AppWidgetProvider 继承自 BroadcastReceiver,它能接收 widget 相关的广播,例如 widget 的更新、删除、开启和禁用等。 AppWidgetProvider中的广播处理函数如下: onUpdate() 当 widget 更新时被执行。 同样,当用户首次添加 widget 时,onUpdate() 也会被调用,这样 widget 就能进行必要的设置工作(如果需要的话) 。但是,如果定义了 widget 的 configure属性(即android:config,后面会介绍),那么当用户首次添加 widget 时,onUpdate()不会被调用;之后更新 widget 时,onUpdate才会被调用。 onAppWidgetOptionsChanged() 当 widget 被初次添加 或者 当 widget

Android 之窗口小部件详解--App Widget

眉间皱痕 提交于 2019-12-23 10:16:50
Android 之窗口小部件详解--App Widget 版本号 说明 作者 日期 1.0 添加App Widge介绍和示例 Sky Wang 2013/06/27 1 App Widget简介 App Widget是应用程序窗口小部件(Widget)是微型的应用程序视图,它可以被嵌入到其它应用程序中(比如桌面)并接收周期性的更新。你可以通过一个App Widget Provider来发布一个Widget。 本文参考 Android官方文本 ,先介绍App Widget的主要组件,然后再以示例来详细说明。 2 App Widget主要的相关类介绍 2.1 AppWidgetProvider AppWidgetProvider 继承自 BroadcastReceiver,它能接收 widget 相关的广播,例如 widget 的更新、删除、开启和禁用等。 AppWidgetProvider中的广播处理函数如下: onUpdate() 当 widget 更新时被执行。 同样,当用户首次添加 widget 时,onUpdate() 也会被调用,这样 widget 就能进行必要的设置工作(如果需要的话) 。但是,如果定义了 widget 的 configure属性(即android:config,后面会介绍),那么当用户首次添加 widget 时,onUpdate()不会被调用;之后更新

醒醒,Android开发居然只有cv最顺手,你还会什么?

五迷三道 提交于 2019-12-23 00:08:32
作为一个Android开发,现在的你已经开发多少年了? 你的代码质量有没有随着经验的增加而提高?没有的话就需要反思了。 现在来分享一个有六年经验Android开发,都学到了什么? 一,学习能力 想要成长,学习能力尤为重要 我们一直有句老话,学如逆水行舟,不进则退。就像我们Android进阶,需要学习的高级内容比较多 1)Java语言进阶与Android相关技术内核 像 泛型,多线程,反射,JVM,Java IO,注解,序列化等 2)App开发框架知识体系(app亦对象) Android 2013~2016年的技术,大家网上Copy代码习惯了 对这块经常“使用”的代码熟悉而又陌生:熟悉的是几乎天天在和它们打交道,天天在复制这些代码;陌生的是虽然天天和这些代码打交道,从未深入研究过这些代码的原理,代码深处的内涵。 我们需要从新的角度去分析这些知识点,深入研究他们,要学习源码,模仿源码,然后再hook源码, 这样才能说自己懂这块的知识。这些都是做Android开发,做高级工程师的基础。 3)360° Android app全方位性能调优 书写高性能代码,再调优 4)Android前沿技术 比如热升级,热修复,App Instant,强制更新,组件化路由架构Arouter,RxJava,IOC架构方法,Hook技术等 这些技术你不能只会用,你需要知道他的原理 5)NDK 模块开发 NDK