《Android第一行代码(第三版)》笔记

2020-08-11  本文已影响0人  田田ww

第一章 引言

一、安卓基础

1.安卓四大组件

Android四大组件.png

活动控制了APP一切可见的操作与界面
服务在后台运行,包含没有界面的业务逻辑
广播接收器可以接收和发送各处广播
内容提供器在应用程序之间传递数据

2.Android开发环境

1.安装Java JDK
2.安装Android SDK(一般先下载SDK Manager配置代理之后下载,网一定要好要有耐心。。。)
3.安装Android Studio IDE(可选择不下载虚拟机,用安卓真机调试)配置SDK本地路径即可开始编程
4.安装、配置git可对代码进行管理

3.Android代码

1.Android代码的逻辑和视图分离
2.build.gradle项目相关配置及依赖项
AnroidManifest.xml注册四种组件、声明权限
3.Log打印日志

第二章 活动Activity

一、Activity基础

xml是布局文件,activity基础功能是加载xml布局文件,定义布局文件子组件功能。
每个activity代码中都需要一个onCreate()函数,在初始化activity过程中设置xml布局,通过setContentView(R.id)函数设定加载布局内容。
在AndroidManifest.xml中<application>标签内对活动进行声明,在<activity>标签内可以对活动的属性进行设置,例如显式活动或者隐式活动

二、用intent在活动之间穿梭

首先一个成熟的程序员需要做到,在创建活动时,要意识到自己的活动可能会被其他人使用,在进行跳转时,如果需要规定携带的参数,尽量暴露出来

关键方法
在activity中写一个startActivity()方法将所需参数传入,并在此方法中实现参数传递和活动跳转,通常写法如下

public static void startActivity(Content content,Param param1, Param param2){
  Intent intent = new Intent(context, neaxtActivity.class);
  Bundle bundle = new Bundle();
  bundle.put(param1);
  bundle.put(param2);
  intent.putExtra(bundle);
  context.startActivity(intent);
}

1、使用intent-filter在AndroidManifest.xml中设置活动属性

第三章 UI界面

一、常用布局

1. LinearLayout线性布局

线性布局头部需要添加

android:orientation="vertical"

android:orientation="horizontal"

进行布局方向的规定
注意layout_weight属性,通过比重设置可将所有控件

2.RelativeLayout相对布局

需要规定组件的相对位置

3.ConstraintLayout约束布局

在Split界面有引导线可视化调整组件
可创建动态布局和动画

二、布局加载方法

绑定父布局

activity布局实例化有两种方式
1.DataBinding
布局文件需要转为Binding类才能在活动中被绑定,可通过快捷键Alt+Enter对布局文件头部进行转化,Binding类包含两个特征,type中声明了Binding包的路径,同时可通过“@{}”或“@={}”可指定组件属性。
DataBinding需要在build.gradle(:app)android{}模块里增加

dataBinding {
     enabled = true
   }

DataBinding 用法示例

ActivityMainBinding binding = DataBindingUtil.setContentView(this, R.layout.activity_main);

2.LayoutInflater
没有载入的布局或需要动态载入的布局都可以通过LayoutInflater抽象类进行加载。
三种方法如下

//1.调用Activity的getLayoutInflater()方法
LayoutInflater inflater = getLayoutInflater();
//2.从上下文获取
LayoutInflater inflater = LayoutInflater.from(context);
//3.
LayoutInfalter inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

三种方法本质都是调用context.getSystemService()方法

三、RecyclerView--实现控件滚动的常用方法

由于RecyclerView不是内置在SDK中,在xml文件里使用时需要将其完整路径写出。
RecyclerView适配器继承自RecyclerView.Adapter
ViewHolder继承自RecyclerView.ViewHolder,用来获取数据并缓存view示例,避免随滚动重新加载

上一篇 下一篇

猜你喜欢

热点阅读