您的位置:首页 > 移动开发 > Android开发

安卓第二课:教材中游戏启动界面实现之我有疑问之自问自答【外篇】

2014-11-05 22:41 155 查看
     疑问一:
                实例中的SFEngine.java这个文件到底是干嘛用的?

        :本意——游戏引擎。就内容上来看主要设置一些全局、通用性的属性、方法,方便不同的对象来调用

        疑问二:

                在往界面里拖放控件,如TextView时,如果设置了它的android:text属性为一个字符串时,系统是会提示Warning的(当然运行没影响),那么这个是什么缘故?作为一个强迫症患者,如果想看到干干净净的界面,该怎么把这个Warning给去掉?

        :系统提示的警告信息时:Hardcoded string "XXXXXXX", should use @string resource,简单理解就是写这种东西啊不要写死,用个字符串资源变量来写,这样你以后修改的时候就不用打开每个界面去修改它了,直接找到资源列表里的字符串文件就可以统一修改了。

        疑问三:

                实例中从启动界面过渡到菜单界面使用了渐隐渐现的ALPHA效果,但是看起来不够明显(就效果来说ALPHA效果还是比较好的),我想这个过渡的过程看的再明白点,想换个旋转的特效,该如何操作呢?

     答:这个东西上课已经操作过了,主要是修改fadein.xml和fadeout.xml文件中的alpha效果为其他效果(至于其他效果有哪些可以参考下面这篇博文:http://blog.csdn.net/sun6255028/article/details/6735025)

        疑问四:

                每次新建一个类的时候都有个默认的继承父类,是谁?隔壁老王?如果我指定了要继承的特定父类,然后想要重写父类里的一些方法,我该怎么做是最省力的?

        :这个当我们在新建类的时候我们可以看到在“Superclass”一栏中默认是“java.lang.Object”。也就是说默认的父类就是他了。关于该类的原文说明为:“This class must be implemented by the vm vendor. Object is the root of the java class hierarchy.
All non-base types respond to the messages defined in this class.”。简单的说就是他是所有类的祖宗。当然一般情况下我们轻易是不麻烦祖宗的,所以我们的Superclass都是具体到直接关联的上级父亲大人。

        那么如何重写父类里的一些方法,最省力的做法就是利用“Source”菜单里的“Override/Implement Methods...”选项,然后选择想要重写的方法即可。

        疑问五:

                我们到目前为止已经接触过两种布局方式:RelativeLayout和FrameLayout,那么其他还有哪些?各自的特点是什么?

     答:这个百度上查查就可以了(当然这里所有的问题百度上查查都可以的)。可以参考博文:http://blog.chinaunix.net/uid-26063552-id-2972116.html

        疑问六:

                前面我们讲播放器的时候设置播放器的播放文件是用播放器对象的setDataSource方法,而这里用了播放器类的create方法,怎么回事?

        :我们先去查API文档(这是个好习惯,大家应该学习,呵呵)。关于create,静态的,有三种重载,其中最后一种我们不用管(因为涉及到一个新的东西SurfaceHold),主要是前面两种,一种是根据给出的URI(也就是一个资源地址),一种是根据给出的RESID(也就是资源ID)来创建一个mediaplayer。而setDataSource更有四种重载,不细说了。setDataSource方法和create方法最直接的区别就在于create成功后直接进入prepare状态,而setDataSource成功后是进入Initialized状态,需要再次调用prepare方法来继续。(http://www.cs.cmu.edu/~srini/15-446/android/android-sdk-linux_x86-1.0_r2/docs/reference/android/media/MediaPlayer.html#setDataSource%28java.io.FileDescriptor,%20long,%20long%29)

        疑问七:

                在实例中我们将背景音乐的播放作为一个服务存在,那么服务(Service)的生命周期和活动(Activity)的生命周期有什么不同?又是如何开始以及停止销毁的?

        :服务的生命周期(http://www.cnblogs.com/macroxu-1982/archive/2012/12/18/2823183.html) 活动的生命周期(http://blog.csdn.net/sdlgxxy/article/details/6225926)

        疑问八:

                为毛做老师的要布置这么多问题?

     答:没事找事做(今天来看点击量才26,其中还包括一部分我自己的点击,失败啊……),不过还是有同学来看的,吾心甚慰!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android