1.1 应用开发基础
activity 是Android SDK中activity类的一个具体实例,负责管理用户与信息屏的交互。
布局定义了一系列的用户界面以及它们在屏幕上的位置。
1.2 创建android 项目
包名遵循DNS反转,保证包名的唯一性
1.3 Android Studio使用导航
1.4 用户界面设计
Android SDk内置了多种组件,组件是用户界面的构造模块,每个组件都是View类或者其子类(TextView或Button)的一个具体实例。
1.4.1 视图层级结构
根元素必须指定Android XML文件的命名空间属性为http://schemas.android.com/apk/res/android
命名空间参考资料
LinerLayout组件继承自View子类的ViewGroup组件,如果需要以一列或者一排布置组件,使用LinerLayout组件就可以。其他ViewGroup子类还包括TableLayout,FrameLayout和RelativeLayput。
1.4.2 组件属性
match_parent:视图与其父视图大小相同。根元素也有父视图,Android提供父视图来容纳整个视图层级结构。
android:text:指定组件要显示的文字内容。
1.4.3 创建字符串资源
每个项目都包含一个strings.xml文件。
1 |
<string name="true Button">True</string> |
1.5 从布局XML到视图对象
通过相对应的activity子类,*.xml文件中的元素转换为视图对象。
- APPCompatActivity,实际就是Activity的一个子类,主要是为Android旧版本系统提供兼容性支持。
- activity的子类实例创建后,onCreate( 大专栏 Android开发初体验Bundle)方法会被调用。activity创建后,它需要获取属于自己的用户界面
1
public void setContentView(int layoutResID)
根据传入的布局资源ID,该方法生成指定布局资源的视图并且放置在屏幕上。
资源与资源ID
要为组件生成资源ID,需要在定义组件时,定义adnroid:id 属性。
1.6 组件的实际运用
既然按钮有了资源ID,就可以在QuizActivity中直接获取。
1 |
private Button mTrueButton; |
1.6.1 引用组件
1 2 |
public View findViewById(int id); mTrueButton = (Button)findViewById(R.id.True_button); |
1.6.2 设置监听器
1 2 3 4 5 6 |
mTrueButton.setOnClickListener(new View.OnclickLinstener(){ @override public void onClick(View v){ // Does sonething later; } }); |
创建提示消息
1 2 3 4 5 6 |
mTrueButton.setOnClickListener(new View.OnclickLinstener(){ @override public void onClick(View v){ Toast.makeText(QuizActivity.this,R.string.incorrect,Toast.LENGTH_SHORT).show(); } }); |