一、章节知识点总结
经过这段时间以来的学习,让我对Android移动应用开发有了一定的了解。
1.1 第一章:Android入门基础
1.1.1 Android开发环境搭建
安装JDK,配置环境变量。安装并熟悉使用开发工具Android Studio,包括SDK与模拟器的安装。
1.1.2 Android程序结构
app文件夹中存放工程代码,是源代码和资源文件的存放位置;
build文件夹存放编译后的文件,并且最终生成的apk文件也是存放在这里;
libs文件夹存放.jar,.rar等第三方依赖包;
配置清单l是整个项目的配置文件,所有的Activity、Service、Broadcast
等都要在这里定义。通过这个文件可以清晰的查看项目的大致结构。
Logcat调试,可以打印一些程序中的日志信息,方便开发调试。
Logcat日志分为5个级别:Log.v()全部信息、Log.d()调试信息、Log.i()一般信息、Log.w()警告信息、Log.e()错误信息。
1.2 第二章:Activity与Intent
1.2.1 Activity
Activity是四大组件之一,也是最基本的组件,每个Activity都表示一个页面。
Activity由两部分组成,分别是Activity.java代码文件和.xml布局文件构成。在Activity的onCreate(Bundle savedInstanceState)方法中调用setContentView(R.layout.activty_main)来加载布局。
每个定义的Activity都需要在l清单文件中进行注册,这样才可以被系统识别,否则将无法运行APP。在清单文件中,为主界面,也就是启动应用后打开的第一个
界面设置intent-filter:
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
1.2.2 Intent
使用Intent来启动Activity。例如在Activity A中启动Activity B:
Intent intent = new Intent(A.this, B.class);
startActivity(intent);
也可以在Intent中传递值,使用intent.putExtra()方法可以传递各种类型的值到目标Activity,例如:
Intent intent = new Intent(A.this, B.class);
intent.putExtra(“key”, data);
startActivity(intent);
获取值时使用代码:getIntent().getXxxExtra();
也可使使用Intent隐式启动一个Activity,例如:
Intent intent = new Intent();
intent.setAction();
startActivity(intent);
1.3 第三章:Android UI开发
1.3.1 布局Layout
线性布局 LinearLayout
属性:
android: orientation 指定布局中View的排列方式,vertical表示垂直排列,horizontal表示水平排列。
android: layout_gravity 指定View的对齐方式。
android: layout_weight 指定View所占的权重(根据比例)。
相对布局 RelativeLayout
属性:
android: layout_ centerHorizontal:水平居中;
android: layout_ centerVertical: 垂直居中;
android: layout_ centerInParent:相对于父元素完全居中;
android. lavout alienParentBottom:紧贴父元素的下边缘:
android: layout_alignParentLeft:紧贴父元素的左边缘;
android. layout_alignParentRight:紧贴父元素的右边缘;
android: layout_alignParentTop:紧贴父元素的上边缘;
帧布局 FrameLayout
FrameLayout相当于一个Z轴,所有的控件都是一个堆在一个上面。可以使用android: layout_gravity指定空间的对齐方式。
绝对布局 AbsoluteLayout
可以指定控件在布局中的确切位置。
表格布局 TableLayout
网格布局 GridLayout
约束布局 ConstraintLayout
1.3.2 常用控件View
TextView 显示一段文本;
EditText 具有编辑功能的TextView,可以让用户输入一些文本;
Button 按钮,可以提供给用户点击事件交互;
ImageView 可以用来加载显示图片;
安卓intent用法ToggleButton 开关按钮;
RadioButton 单选按钮;
CheckBox 多选按钮;
ProgressBar 进度条,可以使用style设置水平或圆圈样式;
SeekBar 是一个可拖动的精度条;
1.3.3 用户交互
AlertDialog 创建基本对话框
ProgressDialog 创建进度对话框
DatePickerDialog 日期选择对话框
TimePickerDialog 时间选择对话框
Toast 吐司信息
使用Toast.makeText(context, “toast info”, Toast.LENGTH_SHORT).show();来创建一个Toast信息,可以用来向用户反馈消息,短暂时间后会自动消失。
1.4 第四章:Android数据存储技术
本章是Android中比较重要的一部分,用来持久化一些重要数据在设备中以备用户后续重新访问。且包含了四大组件之一:ContentProvider。
1.4.1 ShardPreferences
ShardPreferences用来快速存放一些简单的数据,例如用户的应用设置偏好。
获取SharedPreferences对象:DefaultSharedPreferences(Context);
可以存放的数据类型有:Int、Float、Boolean、Long、String等基本数据类型。
使用方法:
getSharedPreferences(“data”, MODE_PRIVATE).edit().putInt(“age”, 18);
1.4.2 文件存储
内部存储,使用getFileDir()或getCacheDir()将文件保存到应用内部私有目录。
创建一个文件:
File file = new FileDir(), filename);
外部存储,把文件保存在外部存储区域(SD卡中)。
使用外部存储,需要向系统申请存储权限,在l文件中添加权限代码:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
1.4.3 SQLite数据库
提供数据库存储的能力。
SQLiteDatabase类,提供了对数据库的增删改查等操作。
常用方法有:
create(sqlitedatabase, factory) 创建数据库
openOrCreateDatabase(file, sqlitedatabase, factory) 创建或打开数据库
long insert(table, nullColumnHack, values) 插入一条数据
Cursor query(table, columns, selection, selectionArgs, groupBy, having, orderBy) 查询数据
int update(table, values, whereCause, whereArg) 修改指定数据
int delete(table, whereClause, whereArgs) 删除指定数据
void close() 关闭数据库
1.4.4 ContentProvider
ContentProvider是Android系统系统的用于数据共享的组件,利用ContentProvider可以在隐藏实现细节的基础上,向其他应用程序提供访问和操作数据的接口,其他应用程序通过ContentResolver来获取ContentProvider暴露的数据。
ContentProvider的URI字符串格式为:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论