Geoquiz的构成:activity和布局
activity是Activity的一个实例,负责管理用户和信息交互。
布局XML文件,保存布局信息。
组件
组件是组成用户界面的构造模块。每一个组件都是view类或其子类的一个实例,负责显示文字,图像,与用户交互,布置屏幕上其他组件等。
组件之间具有层级结构。
属性
android:layout_width和android:layout_height(视图大小)
match_parent和父元素大小相同
wrap_content自动调整大小
android:padding 除内容本身外需要额外的空间(单位dp)
android:orientation(排列方式)
vertical垂直
horizontal水平
叠放顺序:从上到下,从左到右
字符串资源
所有的字符串保存在strings.xml文件中
添加:<string name="">...</string>
引用:@/string/...
资源ID
任何资源都可以拥有一个资源ID,保存在R.java文件中。
不是所有的资源都需要ID,需要ID的资源可以添加:android:id = "@+id/..."(@引用,+新建)
新建成员变量并引用组件
private Button mTureButton(注意成员变量的命名)
mTureButton = (Button)findViewById(R.id.ture_button)(注意类型转换)
设置监听器
创建提示信息mNextButton = (Button)findViewById(R.id.next_button); mNextButton.setOnClickListener(new View.OnClickListener(){ @Override public void onClick(View v) { mCurrentIndex = (mCurrentIndex+1)%mQuestionBank.length; uodateQuestion(); } });
参数:activity类,要显示内容的ID,显示时间。Toast.makeText(this,messageResId,Toast.LENGTH_SHORT).show();