用此转移记录一下学的Android Studio

android.enableAapt2=false

第二讲 2022/08/24

Andriod程序结构

  1. app:用于存放程序的代码资源等内容,包含了很多子目录,也是使用最频繁的一个目录

    libs:用于存放第三放jar包

    src/AndroidTest:用于存放测试的代码文件

    src/main/java:用于存放程序的代码文件

    src/main/res:用于存放程序的资源文件

    src/Android/Manifest。xml:清单文件是整个程序的配置文件

    bulid.gradle:是app的gradle构建脚本

  • bulid.gradle:是程序的gradle构建脚本

  • local.properties:用于指定项目中所使用的sdk路径

  • setting.gradle:用于配置在android程序中使用到的子项目

    资源管理和使用

    资源就是可以在代码中使用的web文件,这些文件作为应用程序的一部分,被编译到app中。

  • 图片资源:扩展名为png.jpg.gif等的文件

  • 根据用于来说可以将图片资源分为两类:

    • 应用图片资源:存放在mipmap文件夹中

    • 界面中使用的图片资源:存放在drawable文件夹中

  • 匹配规则

    • 120-160dpi:mdpi (dpi是指密度,前面字母表示大小不同的区分)

    • 160-240dpi:hdpi

    • 240-320dpi:xdpi

    • 320-480dpi:xxdpi

    • 480-640dpi:xxxdpi

  • 调用图片资源的方法

    • 通过Javadiamagnetic调用图片资源

      • 调用mipmap文件夹中的资源文件

      • getResources().getDrawable(R.mipmap.ic_launcher)

      • 调用drawable文件夹中的资源文件

      • getResources().getDrawable(R.drawable.ic_launcher)改成图片名

  • 在xml布局文件中调用图片资源

    • 调用mipmap文件夹中的资源文件

      • @mipmap/ic_launcher(泛指 是id的变量名)

      • 调用drawable文件夹中的资源文件

      • @drawable/ic——launcher

第三讲2022/08/29

资源管理和使用

  • 主题和样式:用来定义界面元素的显示风格

    • 主题:改变窗体的样式,对整个应用或某个Activity存在全局性影响

      • 在Java代码中调用

      • setTheme(R.style.AppTheme);

    • 样式:设置view的具体样式

      • 在xml中设置样式

        • style="@style/样式的名称"

  • 布局资源:搭建程序中的各个界面

    • 通过Java代码方式调用布局资源文件

      • setContentView(R.layout.activity_main);

    • 在xml布局文件中调用布局资源文件

      • <include layout="@layout/activity_main"></include>

  • 字符串资源

    • 通过Java代码调用字符串资源

      • getResources().getString(R.string.app_name);

    • 在XML布局文件中调用字符串资源

      • @string/app_name

  • 颜色资源

    • 通过Java代码调用颜色资源

      • getResources().getColor(R.color.colorPrimary);

    • 在XML布局文件中调用颜色资源

      • @color/colorAccent

  • 定义颜色:通过Alpha-Red-Green-Blue去定义

    • #RGB

      • <color name="red">#f00</color> <color name="green">#0f0</color>

    • #ARGB

      • <color name="red">#6f00</color> <color name="green">#60f0</color>

    • #RRGGBB

      • <color name="red">#f00</color> <color name="green">#0f0</color>

    • #AARRGGBB

      • <color name="red">#66ff0000</color> <color name="green">#6600ff00</color>

  • 尺寸资源:dimens文件中 需要自己创建

    • 在Java代码中调用尺寸资源

      • getResources.getDimension(R.dimen.layout_size);

    • 在XML布局中调用尺寸ziyuan

      • @dimen/layout_size

    • sp:比例像素,处理字体的大小,根据屏幕密度的变化而变化的

    • dp:设备独立像素,设置控件的宽高和不的宽高

    • px:像素,每一个px对应的时屏幕上的一个点

第四讲 2022/9/5

学习目标:

了解:约束布局

掌握:view视图,页面布局的编写方式

重点:常见的页面布局

view视图

所有的UI元素都是通过view和viewGroup去创建的 注意点:安卓应用的每一个界面的根元素有且只有一个viewGroup容器

页面布局的编写方式

  • 在XML文件编写布局

    • 有效的讲界面中布局的代码和Java代码隔离,使程序的结构更加清晰

  • 在Java文件中编写布局

    • 在android中所有布局和控件的对象都可以通过new关键字创建出来,将创建的view控件添加到viewGroup布局中,从而实现view控件在布局界面中显示

常见的页面布局

  • 常见布局

    • 相对布局:通过相对定位排序

    • 线性布局:以水平或垂直方向排列

    • 帧布局:开辟空白区域,帧里的控件叠加

    • 表格布局:表格形式排列

    • 约束布局:可视化的方式编写布局

第五讲 2022/9/7

常见的页面布局

  • 布局的通用性

    • id:用于设置当前布局的唯一标识,格式:@+id/属性名称

    • layout_width/height:用于设置布局的宽度和高度

      • match_parent:表示当前布局的宽度/高度与父容器的宽度/高度相同

      • fill_parent:同上 被废除了

      • wrap_content:包裹内容

    • backg:用于设置布局背景 既可以引用图片资源 还可以调用颜色资源

    • layout_margin:用于设置当前布局与屏幕的边界,周围布局或空间的距离

      • layout_marginTop:上面

      • layout_marginBottom:下面

      • layout_marginLeft:左面

      • layout_marginRight:右面

    • padding:设置当前布局内控件与该布局的距离

      • paddingTop:上面

      • paddingBottom:下面

      • paddingLeft:左面

      • paddingRight:右面

  • relativeLayout相对布局

    • 通过相对定位的方式指定字空间的位置

    • 相对布局特定的属性

  • linearLayo线性布局

    • 主要是一水平或者是垂直的方式来显示页面的控件

    • orientation:设置布局内控件的排列顺序

      • horizonal:水平

      • vertical:垂直

    • layout_weight:在布局内设置控件的权重

第六讲 2022/9/12

常见的页面布局

  • tablelayout表格布局

    • 采用行,列的形式来管理布局,它不需要明确声明宝包含多少行、多少列、而是通过在tablelayout布局中添加TableRow布局来控制表格的行数,通过在tableRow布局中添加控件来控制表格的列数

    • 表格布局的属性

      • 布局属性

      • 控件属性

  • FrameLayout帧布局

    • 在屏幕上创建一块空白的区域,添加到区域中的每个子控件占一帧,这些帧会一个一个叠加在一起,后加入的控件会叠加到上一个控件上层,所有控件都默认显示在屏幕左上角

    • 帧布局的属性

      • foreground:设置帧布局容器的前景图像 始终在所有子控件之上

      • foregroundGravity:设置前景图像的显示位置

  • constrainLayout约束布局

    • 他适合使用可视化的方式编写页面布局

    • 特性

      • 相对定位:创建布局的基本构建方法之一。一个控件相对于另一个控件进行定位

      • 居中定位:控件可以通过添加约束的方式确实该控件在父布局中的相对位置

      • 倾向:在约束时同向相反的情况下,默认控件时居中的,但是也像拔河杨,两个约束的力大小不等时,就会产生倾向

      • chain:链是一种特殊的约束,他使我们能够对一组水平或竖直方向互相关联的控件进行统一管理。一组控件通过一个双向的约束关系链接起来,就能形成一个chain

第七讲 2022/9/19

常见的页面控件

  • 学习目标

    • 了解内容:自定义view

    • 掌握内容:简单控件的使用、listView使用、RecyView使用

    • 重点内容:alertDialog对话框的使用

  • 简单控件的使用

    • 控件是界面组成的主要元素,用户直接与控件进行交互

    • TextView:显示文本信息

      • 属性:

    • Button:用于显示按钮

      • 作用:响应用户的一系列点击事件

      • 在布局中指定Button控件的onClick属性

        • 在布局文件中指定onClick属性

        • 在MainActivity中实现onclick属性对应的值的方法

      • 匿名内部类方式

        • 在MainActivity中添加匿名内部类

      • 实现接口方式

        • 设置button控件的监听事件

        • 当前activity中实现接口

        • 实现接口中的方法

  • EditText:显示编辑框 也可以称为输入框

  • ImageView:显示图片

  • RadioButton:单选按钮

  • CheckBox:复选框

  • Toast:向用户提示一些即时信息

第八讲 2022/9/21

常见的页面控件

  • 简单的使用

    • EditText:

    • ImageView:显示图片

      • 它继承子view

      • 属性

    • RadioButton:单选按钮

      • 它是button子类

      • RadioGroup:单选组合框 继承linearLayout

    • CheckBox:复选框

    • Toast:向用户提示一些即时信息

      • 安卓系统提供的一个轻量级信息提醒机制

      • 格式:toast.makeText(context,text,time).show()

        • context:上下文环境

        • text:显示文本信息

        • time:显示的时间长短length_short、length_long

第九讲 2022/9/26

常见的页面控件-结合案例-AlertDialog对话框

简单的页面控件
  • CheckBox:复选框,也是button的子类,用于实现多选功能,通过checked属性指定控件是否是选中的状态。

第十讲 2022/10/03

常见的页面控件-alertDialog

alertDialog对话框的概述
  • 什么是alertDialog:提示一些重要信息或者显示一些需要用户额外交互的内容

  • 常用的方法

    • setTitle:设置对话框的变体

    • setIcon:设置对话框的图标

    • setMessage:设置对话本文本信息

    • setSingChoiceItems:设置对话框单选列表

    • setMulChoiceItems:设置对话框多选列表

    • setPositiveButton:设置对话框确定按钮

    • setNegativeButton:设置对话框取消按钮

    • show:显示对话框

    • dismiss:取消对话框

普通对话框
  • 创建一个新的项目 -CommonDialog

第十一讲 2022/10/5

常见的页面控件-alertDialog

单选对话框
  • 创建一个新项目-SingleChoiceDialog

第十二讲 2022/10/10

常见的页面控件-alertDialog

多选对话框
  • 内容区域显示的是多选列表

第十三讲 2022/10/17

常见的页面控件-listView

ListView的使用

  • 以列表的形式去展示数据的内容,并且能够根据列表的高度自适应屏幕显示

  • 属性

数据适配器
  • 是数据与视图之间的桥梁

  • 常用的适配器

    • BaseAdapter:基本的适配器

    • SimpleAdapter:继承自BaseAdapter,实现了BaseAdapter的四个抽象方法进行封装

      • context:上下文对象

      • data:数据集合、list类型

      • resourse:item布局的资源id,是int类型

      • from:map集合中的key值,是一个String类型的数据

      • to:Item布局中对应的控件,是int类型的数据

    • ArrayAdapter:是BaseAdapter的子类

      • 六个类

      • public ArrayAdapter(Context context,int resourse);

        public ArrayAdapter(Context context,int resourse,int textViewResourseId);

        public ArrayAdapter(Context context,int resourse,T[] objects);

        public ArrayAdapter(Context context,int resourse,int textViewResourceId,T[] objects);

        public ArrayAdapter(Context context,int resourse,List<T>objects);

        public ArrayAdapter(Context context,int resourse,int textViewResourceId,List<T>objects);

      • context:上下文对象

      • resourse:item布局的资源id,是int类型

      • textViewResourceId:item布局中相应的textView的id

      • objects:需要适配的数组类型的数据

      • listobjects:需要适配的list类型的数据

第十四讲 2022/10/19

ListView

listView的优化
  • viewHolder

  • convertView

第十五讲 2022/10/31

RecyclerView

什么是RecyclerView
  • 用于在有限的窗口范围内显示大量数据的控件

和listView的区别
  • 展示效果

  • 适配器

  • 复用效果

  • 动画效果

第十六讲 2022/11/7

程序活动单元 activity
了解内容
  • 使用fragment

掌握内容
  • activity生命周期

  • activity的创建配置和关闭

重点内容
  • intent和intent filter

  • activity之间的跳转

  • activity启动模式

简述activity的生命周期
  • activity声明生命周期

    • 启动状态

    • 运行状态

    • 暂停状态

    • 停止状态

    • 销毁状态

生命周期的方法
  • onStart():activity可见方法

  • onCreate():创建

  • onResume():

  • onStop():停止

  • onDestroy():

  • onRestart():再次启用时调用

activity的创建配置以及关闭
  • activity的创建

    • 包名右键--new--activity--Empty Activity

    • 不需要去配置清单文件、同时创建布局文件

  • activity的配置

    • 包名右键--new--Java Class

    • 先去继承Activity

    • 配置清单文件

    • 不会同时创建布局文件

  • activity的开启和关闭

    • 开启:startActivity()

    • 关闭:finish()

第十七讲 2022/11/14

程序活动单元activity

Intent和Intent Filter
  • intent

    • 概念:称为意图,是程序中各组件交互的一种重要方式,它不仅可以只当当前组件要执行的动作,还可以在不同组件之间进行数据传递

    • 作用:一般用于启动activity、service以及发送广播

    • 分类:显示意图

    • 分类:隐式意图

  • intentFilter

    • action:用于指定Intent对象的动作

      • 注意:在清单文件中为activity添加intent-filter标签时必须添加action属性,否则隐式intent无法开启该activity

    • data:指定数据的URI或者数据MIME类型,它的值通常与Intent的action属性有关联

    • category:用于为action添加额外信息。

      • 注意:intent-filter中罗列的category属性数量必须大于或者等于隐式intent携带的category属性数量时,category属性才算匹配成功。如果一个隐式intent没有设置category属性,它可以通过任何一个Intent-filter的category匹配。

activity之间的跳转
  • 数据传递

    • putExtra():

      • 名称和数据信息

    • Bundle类:

第十八讲 2022/11/16

程序活动单元Activity

activity之间的跳转
  • 数据传递

    • Bundle类:采用键值对的形式去存储信息key对应一个value

      • putXXX:将数据封装到Bundle对象里

      • putExtras:将bundle对象封装到intent里

  • 数据回传

    • startActivityForResult():用于开启一个activity,当开启的activity销毁时,希望从中返回数据。

      • intent:表示意图

      • requestCode:表示请求码,用于标识请求的来源

    • setResult():用于携带数据进行回传

    • onActivityResult():用于接收回传的数据,并根据传递的参数requestCode,resultCode来识别数据的来源

第十九讲 2022/11/21

activity的任务栈和启动模式

android中的任务栈
  • 任务栈:一种用来存放activity实例的容器

  • 特点:先进后出

  • 操作:压栈和出栈

activity的启动模式
  • standard模式:默认模式,每启动一个activity就会在栈顶创建一个新的实例

  • singleTopmoshi:会判断要启动activity实例是否位于栈顶,如果位于栈顶则直接复用f+,否则创建新的实例

  • singleTask模式:每次启动activity时,系统会首先检查栈中是否存在当前的activity实例,如果存在则直接使用,会把当前activity之上的所有实例全部出栈

  • singleInstance模式:会启动一个新的任务栈来管理activity实例,无论从哪个任务栈中启动该activity,该实例在整个系统中只有一个

使用Fragment

Fragment简介
  • 碎片,是一种可以嵌入activity中的UI片段,它可以用来描述activity中的一部分布局

fragment生命周期
  • onAttach():fragment和activity建立连接的时候调用

  • onCreateView():Fragment创建视图时调用

  • onActivityCreated():Fragment相关联Activity已经创建完成时调用

  • onDestroyView():Fragment关联的视图被移除时调用

  • onDetach():Fragment和activity解除关联的时候调用

  • 21
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值