Ctrl+F11能将模拟器横过来。

 

界面布局:

常用的几个布局框架:

LinearLayout:线性布局,可以使用垂直线性布局,也可以使用水平线性布局。可以放多个控件,但是一行(列)只能放一个控件。

android:orientation=”vertical”声明以垂直方式排版

android:orientation=”horizontal”声明以水平方式排版

改成水平排版,需要加上android:layout_weight="1"属性,不然显示不正常。今天调试这个布局,没有加上,怎么都显示不正常。

android:layout_width=”fill_parent”定义当前视图在屏幕上可以使用的宽度,fill_parent即填充整个屏幕。

Android:layout_height=”wrap_content”表示随着文字栏位的不同而改变这个视图的宽度或者高度。

layout_weight所有视图都有一个layout_weight值,默认为0,意思是需要显示多大的视图就占据多大的屏幕空间。若大于0,则将父视图中的可用空间分割。

android:layout_gravity="center"文字居中

 

RelativeLayout:相对布局,可以放多个控件,不过控件的位置都是相对位置。

TableLayout:表单布局,需要和TableRow配合使用,很像HTML里面的Table。

TabWidget:切换卡,继承TabActivity,实现标签切换的功能。

FrameLayout:只可以有一个控件,不能设计这个控件的位置,控件会放到左上角。

AbsoluteLayout:可以放多个控件,可以自己定义控件的x,y的位置。

 

第四章小结:

能与用户交互的组件,需要设置事件监听,捕捉用户所触发的事件,进行相应的处理。

Android应用开发揭秘里面很多代码都可以复用,以后开发可以借鉴。

 

 

第五章:Android游戏开发

设计游戏界面时,千万不要使用Layout来实现布局。

其实游戏就是通过状态机让Canvas不断地在View上画你想要的东西,这个状态机不仅包括游戏内部的执行,还包括外部的输入。

游戏开发中经典的MVC模式:首先需要一个用来显示界面的视图,android中提供了View和Surfaceview来实现这个视图;其次,需要控制游戏的整体结构,即MVC中的Control,在Android中可以通过Activity来实现;最后,需要实现的是一个逻辑类,专门用来处理游戏的逻辑计算等。

游戏中的另外一个重要环节就是处理游戏界面和用户交互所发生的事情,比如用户按键、触笔点击等。在android中,View类提供了onKeyDown、onKeyUp、onTouchEvent等方法来捕捉并处理这些事情。

 

游戏部分打算先跳过。