---恢复内容开始---
# 学号 2017-2018-20172309 《程序设计与数据结构》第十一周学习总结教材学习内容总结
-
第23章
- 初识Android操作系统:一个多用户的Linux系统,一个运用程序运行时与其他的运用运行是独立的。
- 发展:在Android4.4之前所有的应用都是在虚拟机上运行的,在其之后应用程序的源代码是在一个叫ART的东西上完成的。
- 应用开发过程:java字节码——>Dalvik可执行文件dex(包括Java类、资源文件、dex文件、其他文件)——>打包为一个apk文件(application package).
- 现如今,已有22个API Level可用。当Level越高,可执行的功能就越多,但是,较多旧手机或者平板就不能用了。
- API有四中Android应用程序组件:
- 活动:与用户进行交互的窗口。
- 服务:在后台进行长时间的操作。
- 广播接收者:一个监听器,负责对系统或应用程序声明作出响应。
- 内容提供者:管理要和其他应用程序分享的一组数据的一个组件。
-
第24章
- 完成了在Windows上安装Android studio。
- 完成了自己第一个Android程序Hello Wrold。
- 了解到应用程序结构:
- manidests. 包含一个Android清单
- java。 内含所有的java类和测试类
- res. 包含资源文件。
- 学会创建一个虚拟设备和使用物理设备进行应用检验。
-
第25章
- 活动的生命周期:
- onCreate//创建活动。
- onStar//使活动变得可见。
- onResume//运行活动
- onPause//暂停活动
- onStop//停止活动
- onRestart//重新开始活动
- onDestroy//终止活动
- 学会如何修改一个应用的图标
- 如何使用Android资源
"@android: "
将自动显示资源列表 - 启用另一个活动
startActivity(intent);
- 活动的生命周期:
-
第26章
- 使用UI组件,在现在的版本中。只需要拖动相应的组件即可。布局控制在
app
->res
->layout
->相应的活动布局
中 - 自己独立测试了:
View Text
、Toast
、Alert Dialog
、notification
。
- 使用UI组件,在现在的版本中。只需要拖动相应的组件即可。布局控制在
-
第27章
- 本章讲解的是一个布局,布局非常重要!
- 本章讲解了LinnearLayout、RelativeLayout、FrameLayout、TableLayout、GridLayout。
LinnearLayout
是一种最简单的布局方式,可以将子视图以相同的方式(水平或垂直)对齐。- 效果:
- 分别在代码清单中用
android:orientation="horizontal"
或android:orientation="vetical"
//前者水平、后者垂直
RelativeLayout
是根据一个或者多个同级视图的位置来确定他们的位置的。- 使用方法:
FrameLayout
讲一个视图放在另一个视图之上。- ...
-
第28章
教材学习中的问题和解决过程
-
问题1:如何理解
android:
android:allowBackup="true"、
android:icon="@mipmap/ic_launcher"、
android:label="@string/app_name"、
android:roundIcon="@mipmap/ic_launcher_round" `和· android:supportsRtl="true"· -
问题1解决方案:
后面两个据我所知应该分别是APP的图标和名字吧。
至于android:roundIcon="@mipmap/ic_launcher_round" 这个属性是设置圆形图片的,如果你有的话,放进去,没有的话设置同一张或者删掉不写这个属性,有些手机换主题会使用这个属性
最后就是 -
问题二:使用AlertDialog时,代码如何实现?
-
问题二解决方案:通过在网上收集资料,编写出了:
>
> public class MainActivity extends AppCompatActivity {
> private Button button1;
> @Override
> protected void onCreate(Bundle savedInstanceState) {
> super.onCreate(savedInstanceState);
> setContentView(R.layout.activity_main);
> button1 = (Button)findViewById(R.id.button1);
> button1.setOnClickListener(new OnClickListener() {
> @Override
> public void onClick(View v) {
> AlertDialog.Builder dialog = new AlertDialog.Builder(MainActivity.this);
> dialog.setTitle("标题");
> dialog.setMessage("你要继续么?");
> dialog.setCancelable(false);
> dialog.setPositiveButton("继续", new DialogInterface.OnClickListener() {
> @Override
> public void onClick(DialogInterface dialogInterface, int i) {
> Intent intent = new Intent(MainActivity.this,ThirdActivity.class);
> startActivity(intent);
> }
> });
> dialog.setNegativeButton("退出", new DialogInterface.OnClickListener() {
> @Override
> public void onClick(DialogInterface dialogInterface, int i) {
>
> }
> });
> dialog.show();
> }
> });
> }
> }
代码托管
虽然有链接,但是我并没有Git上传呀!
上周错题总结:
第九周一下子总结了两周的错题,所以这周就没有了[第九周博客](https://www.cnblogs.com/dky-wzw/p/9004756.html)
点评模板:
-
博客中值得学习的或问题:
- 内容解释结合图片来解释,显而易懂。
- 重点用不同的颜色突出。
- 对活动的相关解释详细。
-
基于评分标准,我给本博客打分:14分。
点评过的同学博客和代码
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 075/200 | 1/1 | 05/20 | |
第二周 | 560/500 | 1/2 | 13/38 | |
第三周 | 972/1000 | 1/4 | 21/60 | |
第四周 | 694/1666 | 1/5 | 21/90 | |
第五周 | 1544/3095 | 1/6 | 30/90 | |
第六周 | 600/3627 | 1/7 | 30/120 | |
第七周 | 544/4200 | 2/9 | 20/140 | |
第八周 | 907/5107 | 2/10 | 20/160 | |
第九周 | 700/5807 | 1/11 | 20/180 | |
第十周 | 900/6782 | 2/13 | 20/200 | |
第十一周 | 500/7282 | 2/15 | 20/220 |