这里写目录标题
Android
布局
- 常用方法
//缩略方式
android:ellipsize
//最大行数
maxLines
//补白
padding
传值
putExtra /
getIntent getStringExtra
putString putExtras /
getIntent.getExtras getString
传对象
1.finish和onDestory
finish | onDestory |
---|---|
将活动移除活动栈 | 释放系统资源 |
- system.exit(0)退出程序不会调用onDestory
- 大部分APP会先拉起主Activity,再跳转到相应Activity下,使得用户返回时先回到B应用的主页面
返回栈和任务栈
写得好 待会儿看
2.Home和Back
Home | Back |
---|---|
保存状态 | 恢复状态 |
不正常关闭活动 | 只在调onCreate时会使用 |
3.layout_gravity和gravity
layout_gravity | gravity |
---|---|
View内容 | View控件 |
4.margin和padding
margin | padding |
---|---|
View内容 | View控件 |
5.dp和sp
dp | sp |
---|---|
随屏幕自适应字体 | 不随屏幕自适应字体 |
6.onSaveInstance和onRestoreInstance
onSaveInstance | onRestoreInstance |
---|---|
保存状态 | 恢复状态 |
不正常关闭活动 | 只在调onCreate时会使用 |
7.onTouch和onTouchEvent
onSaveInstance | onRestoreInstance |
---|---|
保存状态 | 恢复状态 |
不正常关闭活动 | 只在调onCreate时会使用 |
8.JSON
交换和储存数据的语言,以键值形式存在,本质是字符串
var text={"name":"Steve","data":"2021-12-02"}
//json中的日期为字符串,需转成日期类
var obj=JSON.parse(text);
obj.data=new Data();
看不懂??
- getJSONObject , getJSONArray , getString
- 解析JSON的另一种形式
- Json为数组
List<Person>
,new TypeToken<List<Person>>(){}.getType()
10.url
- 每个信息在网络上的唯一地址
11.网络请求
HttpURLConnection
BufferdReader reader=new BufferedReader(new InputStreamReader(inputStream));
StringBuilder response=new StringBuilder();
String line;
while((line=reader.read())!=null){
response.append(line);
}
okHttp
12.Android六大布局
Relative,Grid,Absolute,Frame,Linear,Table
13.Handler
Bundle
14.垃圾回收机制
SharedPreference
WebView
-
WebView的作用
-
WebView的布局
-
WebView的设置
-
WebView的权限设置
-
WebView的工作原理
在这里插入图片描述
IO流
okHttp
- 依赖库
- okHttpClient
- 请求对象Request
- response对象收返回信息
- post
先构造requestBody存放提交参数
服务
- 生命周期随创建应用的进程
- 适用于长期不与用户进行交互的但需要长期运行的任务
- 不依赖任何用户界面
- 不会自动开启线程,服务内部需要手动创建子线程,避免主线程被阻塞
比如网络请求
- 默认运行在主线程中
涉及多线程编程
- extends Thread
class MyThread extends Thread{
public void run(){
}
}
new MyThread().start()
- implememt
class MyThread implement Runnable{
public void run(){}
}
MyThread myThread=new MyThread();
new Thread(myThread).start();
- 匿名内部类
new Thread(new Runnbale{
public void run(){}
}).start();
Service
-
解绑服务和绑定服务调用的函数 参数不一样
-
匿名内部类的例子
-
设置前台服务
-
调用 startForeground()
-
IntentService
通知
- 设置音频,灯
- 振动
广播
内容提供器