Android需要掌握的基础知识点

1.Android布局,控件

2.点击事件:
 View:onClickListener
 
3.对话框:
 Dialog:
  new AlertDialog.Builder(Context)
  .setTitle(标题)
  .setIcon(图标)
  .setMessage(消息)
  //.setView(View)
  .setPositiveButton(确定,listener)
  .setNagativeButton(取消,listener)
  .show();
  
4.进度条对话框:
 ProgressDialog:
  ProgressDialog dialog = ProgressDialog.show(Context,message);
  
5.Activity:与用户进行交互
   绑定View视图:setContentView(布局资源)

6.启动Activity,传值:
 隐式启动:startActivity(new Intent(action:目标Activity的别名))
 显示启动:startActivity(new Intent(当前Acitivty对象,目标Activity.class))
 
 通过Intent的putExtra(key,value)传值,value可以是所有数据类型
 如果value是对象,需要该类实现序列化接口Serializable
 
 Intent.putExtras(Bundle):Bundle作用类似于map来存储数据
7.Activity的声明周期:
 创建  重新启动 启动    获得焦点  暂停     停止  销毁
 onCreate、onRestart、onStart、onResume、onPause、onStop、onDestroy
 
 A:onCreate、onStart、onResume
 A-B:onPause(A)、onCreate(B)、onStart(B)、onResume(B)、onStop(A)
 B-A(B返回到A):onPause(B)、onRestat(A)、onStart(A)、onResume(A)、onStop(B)、onDestroy(B)
 
 在A页面按home键:onPause、onStop
 
8.Activity四种加载模式:
 标准模式:Standard
 栈顶模式:SingleTop
 单个任务模式:SingleTask
 当个实例模式:SingleInstance(在一个新的任务栈中)

9.四种状态:运行、暂停、停止、销毁

10.ListView:列表控件,能以列表的方式显示数据(数据一定是集合)

 先获取ListView;
 为ListView设置Adapter:Adapter需要自己去写
 
 Adapter优化:使用ViewHolder,来减少LayoutInflater解析布局资源,减少findViewById的查找

11.GridView:默认情况和ListView效果一致,可以设置多列显示,ListView只能单列显示
 numsColum来设置列数

12.解析,网络请求
 xml,json
 HttpURLconnection
13.异步加载数据:因为在UI线程中不能进行耗时操作和网络请求。
 Hanlder:Handler、Message、MessageQueue、Looper
 
 原理:进行线程切换,在子线程中进行耗时或者网络请求操作,完毕后切换到UI线程进行UI更新。
 
 在主线程中创建Handler对象,在子线程中将处理结果通过handler的send方法将结果以Message对象的形式
 发送到MessageQueue中,Looper从MessageQueue中轮询抽取Message对象,将抽取到的Message对象交给对应的Handler,
 handler就能够回调他自己的handleMessage方法来处理该对象,也就是在这里面进行UI更新。

 AsyncTask:谷歌提供一个轻量级的异步任务处理类。
  自定义类继承AsyncTask,指定三个泛型参数.
  重写方法,一般可以重写四个onPreExcute()(主线程,做准备工作)、
  onDoinBackground()(子线程,做耗时或网络请求任务)、
  onProgressUpdate()(子线程,进度更新)、onPostExcute()(主线程,根据结果更新UI)

14.SharedPreferences:sp以xml的形式进行文件存储:存储一些配置信息。
 存储:
  Editor edit = activity.getSharedPreferences(文件名字,访问模式).edit();
  edit.put(key,value);
  edit.commit();
 读取:
  SharedPreferences sp = activity.getSharedPreferences(文件名字,访问模式);
  XXX value = sp.getXXX(key,默认值);

猜你喜欢

转载自blog.csdn.net/ttxs99989/article/details/80879302