学号20172328《程序设计与数据结构》第十一周学习总结

学号20172328《程序设计与数据结构》第十一周学习总结

教材学习内容总结 (Java和Anroid开发学习指导)

  • 1.初识Anroid
  • studio中的应用程序结构:Project窗口中有两个主要的节点,app和Gradle Scripts。
  • app :包含应用程序中所有的组件,有三个节点 manifests、java、res。
    • manifests:包含了一个AndroidManifests.xml文件,它描述了应用程序。
    • java:包含了所有的Java应用程序和测试类。
    • res:包含了资源文件。在这个目录下还有一些目录:drawable(包含了用于各种屏幕分辨率的图像)、layout(包含了布局文件)、menu(包含了菜单文件)、mipmap(包含了用于各种屏幕分辨率的app图标)、还有value(包含了字符串和其他值)
  • R类:一个通用的Java类,可以在项目的app/bulid/generated/source目录下找到。R包含了嵌套的类,该类反过来包含了你的所有的资源的资源ID。每次你添加、修改、删除资源的时候,都会生成R。
  • 2.Anroid清单文件:每个Android应用程序都必须有一个叫做AnroidManifests的清单文件,它用来描述应用程序。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.secondactivitydemo" >

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.example.secondactivitydemo.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name="com.example.secondactivitydemo.ThirdActivity"
            android:label="@string/title_activity_second" >
        </activity>
    </application>

</manifest> 

清单文件是一个XML文件,使用manifest作为其根元素。

  • 3.活动是包含了用户界面组件的一个窗口,用户可以和这些用户界面组件交互。启动一个活动,往往意味着显示一个窗口。Anroid应用程序可以包含多个活动,并且通过在应用程序清单文件中声明来指定主活动。
  • 4.启动另一个活动
  • 启动另一个活动很简单,可以通过调用startActivity(intent)其中intent是Anroid.content.Intent类的一个实例。可以看书本上的SecondActivityDemo项目。
  • 5.UI(user interface)组件
  • 使用Anroid studio创建UI很容易,打开一个活动的布局文件(res/layout),并且将UI组件拖曳到中间的活动屏幕上即可。当我们完成插入组件后,我们可以在项目的清单文件中看修改的部分。
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" 

drawable通常指一个图像文件,String都是指字符串引用。

  • 6.Toast
  • Toast是一个小的弹出对话框,用于显示一条消息给用户。当预定时间段后,Toast气泡会自己消失。
  • anroid.wedget.Toast类是创建Toast的模板,要创建一个Toast,调用它的构造方法,接收Context作为一个参数。
  • Toast还提供了两个静态的makeText方法来创建Toast实例。
Toast toast = Toast.makeText(this.TextValue.toast LENGTH_LONG);
toast.shouw();

一般情况下,一个toast会显示在靠近激活活动的底部。但是,也可以调用其show方法之前调用其setGravity方法从而修改其位置。

public void setGravity(int gravity,int xoffset,int yoffset)
  • 通知:
  • 通知是出现在状态栏的一条消息。和toast不同的是,通知是长久的,并且将保持显示,直到关闭它或者关闭设备。
  • 通知是Andriod.app.Noficiation的实例,创建一个通知最简便的方法,是使用一个叫做Bulider的嵌套类,可以传递一个Context来实例化该类。然后可以在该Bulider上调用bulid方法来创建一个Nofication。
Notification n = new Notification.Builder(context).bulid();

代码调试中的问题和解决过程

  • 问题1.刚开始安装Anroid studio的时候一路next下来,错误不是很多,然后打开后就和别人的界面不同,运行的按键是灰色的。
  • 问题1的解决方案:当时就不知道怎么解决,百度了一下,是我的gradle包没有导入。于是找到网址去下载喽,顺顺利利地解决了自己的问题。
  • 问题2:想要导入文件,结果显示失败了,忘记没有截图,大概的步骤是我这会截下的图。File —— New —— import Module

  • 问题2的解决方案:去找老师答疑,但是可能自己晃了晃神,后面自己又没有练习,所以就不能导入了。搜索得到的结果是

    简单,打开你的studio,左上角点击“File”->"New"->"Import Project",然后在出现的目录选择界面找到你的代码,就是你上边那个图的,看见里边有一个build.gradle了么,直接点击这个就OK,studio会帮你直接生成相应的文件,当然你也可以直接把整个代码导进去,都一样.

  • 问题2的解决方案:我跟着做了一遍,看起来很顺利的样子但是还是无法导入,出现的问题都一模一
    样,所以屡次失败的馨雨同学暂时的放弃了高级导入方法,乖乖的去两个文件夹中复制、粘贴,做了一名搬运工。
  • 问题3:2018年5月30日傍晚时间7点左右,正在做实验2作业的我开了太多后台进程,于是乎Anroid studio卡死在我怀里。我不忍心关上自己的笔记本电脑,硬生生的打开任务管理器关掉了它,然后再打开它的时候安卓小绿就不在了,当时包着一丝幻想,反复打开屏幕,点击省略框,可是就是没有我的小绿。当时也不知道问题出在那里?运行不可以,看不到andriod小绿的目录。搜索也搜不到,就请教了王文彬同学,(?′▽`)??(请不要问我为什么没有截图,当时都慌的不行,当然是忙着解决问题啦
  • 问题3的解决方案:经过王文彬同学大约两个小时(非常感激)的调试,最终解决了问题。我在询问他解决过程的时候,他其实经历了两个小时的修补,改的东西很多,所以不是一个单因素问题。是多方面原因,但是最主要的就是当我关掉进程后我的配置文件自动脱离了,所以需要重新下载或者找到导入我的Anroid studio。
  • 问题4:当我以为万事大吉准备好好做实验的时候,我导入的书上代码通通变红,像是我妈妈做的青虾放入沸水中秒秒钟变成红虾。仔细一看,R是红的,menu也是红的。

  • 问题4的解决方案:看截图呦呦呦

结对及互评

-20172301
-20172304

点评模板:

  • 博客中值得学习的或问题:

    • 20172301:
    • 20172304:

其他(感悟、思考等,可选)

     这学期马上就要结束了,程序设计与数据结构这门课也是陪伴了我整整一个学期。毫不夸张的讲,我在这门课上花的时间是最多的,但还是由于能力不足、了解不够在学习深度方面很欠缺。在学习过程中也是困难不断、各种问题,有时候都觉得这不仅考验我的学习水平,还在极大程度上考验我的心态和情绪控制度。

    通过学习这门课确实看到了我自己的自学能力和实践应用能力稍有欠缺。在学习的过程中,也看到了好多同学的优秀之处,不仅仅是编程能力,更是对同学的无私帮助,乐于分享,勇于发问,勤于思考感到深深地由衷地敬佩。

    还有一两周这学期就要进入尾声的。就像自己很喜欢的一句话一样“靡不有初,鲜克有终”,我一定会坚持去完成这门课的学习。当然课程还会在下学期继续,那就迎接它拥抱它吧。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积)
目标 5000行 30篇 400小时
第一周 100/100 1/1 15/15
第二周 377/477 1/2 20/35
第三周 280/757 2/4 22/57
第四周 973/1730 1/5 35/92
第五周 1000/2730 1/6 40/132
第六周 729 /3459 1/7 40/172
第七周 660/4119 2/9 30/192
第八周 1417/5536 3/12 40/232
第九周 1139/6675 2/14 60/292
第十周 758/7433 2/14 40/332

参考资料

原文地址:https://www.cnblogs.com/LXY462283007/p/9123485.html

时间: 2024-11-09 07:27:29

学号20172328《程序设计与数据结构》第十一周学习总结的相关文章

学号20172328《程序设计与数据结构》第九周学习总结

学号20172328<程序设计与数据结构>第九周学习总结 教材学习内容总结(异常和递归) 第11章:异常 1.[异常处理]: 一个异常:是一个定义非正式情况或错误的对象,由程序或者运行时环境抛出,可以根据需要捕获和处理. 错误:错误类似于异常,但是错误代表不可恢复的问题并且必须捕获处理. 2.[处理异常的三种方法]:①根本不处理异常②当异常发生时处理异常③在程序的某个位置集中处理异常. 3.[未捕获的异常]:如果程序中不处理异常,则程序将非正常的终止运行,并产生关于描述在何处发生什么异常的信息

20172328《程序设计与数据结构》第二周学习总结

20172328李馨雨<程序设计与数据结构>第二周学习总结 又到周五,李馨雨同学要开始写博客了.让我们开始吧!(????) 教材学习内容总结 1.首先是String类定义的字符串,然后是print和println的区别.转义字符的学习.(让我印象深刻的\b[回车符]在字符串结尾不显示哈哈,及其更新的\t[换行符],还有在课堂上真正明白了什么是回车.) 2.了解变量.常量.赋值语句.变量:保存数据的内存单元.常量:坚定自己不会变的数据!除非你用java的反射(有点复杂,改权限.去修饰符等等.没实

20172304 《程序设计与数据结构》 第二周学习总结

20172304 <程序设计与数据结构>第二周学习总结 教材学习内容总结 本周主要学习了第三章和第四章的内容 第三章 集合概述--栈 3.1集合 集合是一种聚集组织了其他对象的对象. 集合可以分为两大类线性集合和非线性集合 线性集合:其元素按直线方式组织的集合. 非线性集合:其元素按某种非直线方式组织的集合.例如按层次结构或按网状结构. 3.1.1抽象数据类型 集合十一找给你隐藏了实现细节的抽象 数据类型:一组值及作用于这些数值上的各种操作. 抽象数据:类型(Absttract Data Ty

20172326 《程序设计与数据结构》第九周学习总结

学号 20172326 <程序设计与数据结构>第九周学习总结 教材学习内容总结 异常(exception):定义非正常情况下或错误的情况的对象,由程序或运行时环境抛出,可根据需要进行相应的捕获处理. 异常与错误的区别:错误代表不可恢复的问题并且必须捕获处理.而异常可以忽视,或者使用try语句处理,或调用更高级的方法. 可检测异常与不可检测异常:可检测异常必须由方法捕获,或者必须在可能抛出或传递异常方法的throws子句中列出来.在方法定义的声明头中追加一条throws子句.不可检测异常不需要使

《程序设计与数据结构》第九周学习总结

学号 20172326 <程序设计与数据结构>第九周学习总结 教材学习内容总结 图:图(Graph)是一种复杂的非线性结构,在图结构中,每个元素都可以有零个或多个前驱,也可以有零个或多个后继,也就是说,元素之间的关系是任意的.与树的区别在于树中的一个结点只有一个前驱,也就是说只有一个父结点.但图中的顶点(结点)是没有这种限制关系的. 无向图:边为无需结点对的图.也就是说,现有两个顶点A.B.(A,B)与(B,A)效果相同.当两个顶点之间有边连接,也就是说这两个顶点是邻接的,也称作邻居.一个顶点

20172305 2017-2018-2 《程序设计与数据结构》第一周学习总结

20172305 2017-2018-2 <程序设计与数据结构>第一周学习总结 教材学习内容总结 本书的第一章简单的介绍了计算机和JAVA的历史,基础内容很多,代码的讲解还没用正式进入,本周一直在做敲代码的准备,简单敲了老师给的"Hello World!"以及书后的PP1.3.PP1.4等简单的小程序. 教材学习中的问题和解决过程 问题1:三种不同类型的错误,运行错误和逻辑错误的混淆 问题1解决方案:针对EX1.20的"希望做加法时却做里乘法"进行了网上

20172314 2017-2018-2 《程序设计与数据结构》第一周学习总结

20172314 2017-2018-2 <程序设计与数据结构>第一周学习总结 教材学习内容总结 本书第一章为计算机系统概述,前面是一些计算机相关的基础知识,让我对计算机有了一个总体的认识,不再是一片空白了,对主存储器和CPU影响深刻,主存储器用于保存程序和数据,CPU执行程序指令.在接下来的Java编程语言与程序开发部分,开始看的时候有点迷茫,不是很理解,后来先按照作业中附带的流程完成一些代码托管之后,接触了完整的简单的程序之后,再回过头来看书,看到的一些陌生的名词在脑海中就有了实际的对应,

20172317《程序设计与数据结构》第一周学习总结

20172317 2017-2018-2 <程序设计与数据结构>第一周学习总结 教材学习内容总结 重新温习了一遍计算机的基础 总算了解了局域网广域网因特网万维网这些东西之间的区别了 通过URL的例子知道了网址各个部分的含义 对Java编程语言和程序开发有了一个粗浅的了解 教材学习中的问题和解决过程 问题:练习题SR1.13出现了答案与题目不相符的情况 问题解决方案:题中有个选项是"网卡",答案中没有,反而有个题目没有的选项"调制解调器"(俗称"

20172322 2017-2018-2 《程序设计与数据结构》第二周学习总结

20172322 2017-2018-2 <程序设计与数据结构>第二周学习总结 教材学习内容总结 了解了print与println的区别 了解了字符串的拼接可以用+来完成 了解了转义字符的使用 学会了使用赋值 学会使用部分算术运算符 学会了使用Scanner来实现交互性 教材学习中的问题和解决过程 问题1:在最初接触赋值时对foalt和double的赋值范围不了解 问题1解决方案:使用万能的度娘后看到一个高赞答案后有了了解 问题2:在提前预习时看到2.7图形后敲入的代码无法执行 问题2解决方案

20172327 2017-2018-2 《程序设计与数据结构》第二周学习总结

20172327 2017-2018-2 <程序设计与数据结构>第二周学习总结 教材学习内容总结 字符串的拼接和转义序列的使用 变量的声明和使用 讨论语法及表达式的处理 定义数据转换类型和实现类型转换的机制 创建Scanner类 教材学习中的问题和解决问题 暂无 代码学习中的问题和解决过程 问题1:在提交过程中,突然遇到无法上传的情况 问题2解决方案:通过上网查找,输入git pull之后弹出一个编辑框,选择关闭之后,再次用git push就成功了. 问题2:在按照例题2.10打代码时,Jav