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

Posted lxy462283007

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学号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

参考资料

以上是关于学号20172328《程序设计与数据结构》第十一周学习总结的主要内容,如果未能解决你的问题,请参考以下文章

20162309《程序设计与设计结构》第十一周学习总结

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

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

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

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

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