GeoQuiz总结
GeoQuiz项目完成后的一些总结与感悟:
首先我们先来总结总结这次项目所完成的一个过程吧!可能有些人认为项目做完就做完了,下次也不可能再做到一样的项目了。
就我个人而言我并不反对这些人的观点,所以我今天所做的总结并不是简简单单的过程总结,更多的是其中所学到的知识的一
个总结。
我们Android开发初体验的一个应用是GeoQuiz——它能给出一道道地理知识问题(地理问题都是英文的,正好可以考察一下你
的英语水平(●'◡'●))。成品图如下:
主界面: CHEAT_BUTTON(偷窥)界面: NEXT(下一题)界面:
用户点击如图上的TRUE或FALSE按钮进行作答。如果实在答不上来还可以点击图中的CHEAT_BUTTON按钮(它可以帮你偷窥到答案呦)。
下面我开始分析一下完成这一个完整应用我们所需要经历的步骤:
1.我们开始一个项目最先当然是要创建一个Android项目,这个创建还是比较简单的,这里我们就不多做说明了。
2.我们要进行对用户界面的一个设计:
我们打开app/res/layout/activity/activity_quiz.xml,里面会有activity默认布局,但这些默认组件并不是我们所需要的,我们需要的是:
(1)一个垂直组件LinearLayout组件;(也就是总体一个框架)
(2)一个TextView组件;(就是一个文本的区域,也就是我们这个应用题目写入的区域)
(3)一个水平的LinearLayout组件;(水平的线性布局)
(4)两个Button组件。(也就是两个按钮,放入LinearLayout中)
小窍门:
在界面设计中,我们通常有两种方法可以完成界面设计:1.直接在XML中编写代码(这种方法我个人
是不太喜欢的,如若一不小心敲错一个单词就会导致界面无法正常)2.在Text中直接拖拽你想要的组
件(这种方法比较简单,并且不会出错)。
3.我们用MVC设计模式进行设计:
“MVC设计模式”这个设计模式对于我来说是十分陌生的,因此我查阅了一些书籍以及百度百科对它进行了一些了解,希望这些了解对于不了
解MVC的人也可以有一些帮助。
GeoQuiz应用对象分为模型、视图和控制器三大类。如图所示:
MVC设计模式表明,应用的任何对象,归根结底都属于模型对象、视图对象以及控制器对象中的一种。
可能许多人对以上这三个对象不太了解,下面我们就深入了解一下这三大对象作用:
(1)模块对象是存储应用数据和业务逻辑的。它不关心用户的界面,它的存在就是为了储存和管理应用数据;
(2)视图对象知道如何在屏幕上绘制自己,以及如何响应用户的输入;(例如触摸动作等)
(3)控制器对象含有应用的逻辑单位,是视图与模型对象的关系纽带。
注意:模型对象与视图对象是不能直接交互的。如图:
MVC设计的优点:
(1)应用简单易懂,让人很容易理解;
(2)模型、视图、控制器分层处理,便于应用的开发;
(3)便于复用类。
4.让设备能够进行旋转
影响:旋转设备会改变设备配置。(设备配置是一系列特征的组合,用来描述当前设备状态)
实现过程:
(1)创建水平模式布局
(2)对水平模式布局代码进行修改
(3)再次运行GeoQuiz,视图如下:
对此次GeoQuiz的一个个人感悟:
这是我第一次做android的应用开发,不,准确来说应该是第二次,第一次是我们大二上学期实训的时候做的。但那一次是和小组队员们分工完成的,
而这一次是自己一个人完成的。说实话当代码可以运行出来的时候我的心里面是十分高兴的,这毕竟是我一个人完成的一个应用。
自从做完了这第一个应用以后我发现我喜欢上了android应用的开发,我感觉android开发不像c、c++编程一样让我感到枯燥、乏味,android开发更多
的可以给人带来一种快乐和成就感。我知道,可能我现在的软件知识基础不是太牢固,不能不借助外力的情况下完成一个应用的开发,当我会朝着这
个方向去努力,在不久的将来我一定也能凭自己完成一个应用的开发!
——这是我第一次写博客,可能思路有些乱还请多多谅解,以后会慢慢改进的☺!