认识组件——活动(Activity)

1.活动(Activity)是最容易吸引到用户的地方了,它是一种可以包含用户界面的组件,主要用于和用户进行交互。
2.加载布局
调用了 setContentView()方法来给当前的活动加载一个布局,而在setContentView()方法中,我们一般都会传入一个布局文件的id。
3.在 AndroidManifest 文件中注册
在AndroidManifest.xm文件的中用注册活动

<activity
android:name=".FirstActivity"//因为AndroidManifest.xm文件前边通过package属性指定了程序的包名所以.FirstActivity就代表 "包名.FirstActivity"
android:label="This is FirstActivity" >//指定活动中标题栏的内容(也是启动器中应用程序显示的名称)
<intent-filter>//定义各种属性
<action android:name="android.intent.action.MAIN" />//设置为主活动(如果一个应用没有声明主活动,这个程序也会运行只是看不到 一般作为第三方服务供其他应用调用)
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>

4.隐藏标题栏
在Activity的Oncreate方法中调用

requestWindowFeature(Window.FEATURE_NO_TITLE);

注意:要在setContentView()之前执行 不然会报错

5.获取元素
通过findViewById()(传入R.id.布局中定义的控件Id)方法获取到在布局文件中定义的元素 返回View对象需要强制转换为需要的控件类型。例如:

Button button = (Button)findViewById(R.id.button);

6.在活动中使用Menu(菜单)
新建菜单:首先在 res 目录下新建一个 menu 文件夹,右击 res 目录→New→Folder,输入文件夹名menu,点击 Finish。接着在这个文件夹下再新建一个的菜单文件,右击 menu 文件夹→New→Android XML File输入文件名,点击Finish完成创建。
看看文件内容:

<menu xmlns:android="http://schemas.android.com/apk/res/android">
//<item>标签用来创建菜单项 通过id指定唯一标识符 通过title给菜单项指定名称
<item
android:id="@+id/add_item"
android:title="Add"/>
<item
android:id="@+id/remove_item"
android:title="Remove"/>
</menu>

在Activity中通过重写onCreateOptionsMenu()方法添加Menu

public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

getMenuInflater()获得一个MenuInflater对象 调用它的inflate()方法创建菜单 inflate()方法接收两个参数 第一个是我们创建的menu文件 第二个参数用于指定我们的菜单项将添加到哪一个 Menu对象当中
onCreateOptionsMenu()返回true则能显示菜单 返回false则不能显示菜单
通过重写onOptionsItemSelected()方法定义菜单的响应事件

public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
    case R.id.add_item:
        Toast.makeText(this, "You clicked Add", Toast.LENGTH_SHORT).show();
        break;
    case R.id.remove_item:
        Toast.makeText(this, "You clicked Remove", Toast.LENGTH_SHORT).show();
        break;
    default:
    }
    return true;
}

7.销毁活动
在Activity中调用finish()方法。

你可能感兴趣的:(认识Activity,Activity使用)