Android 手动创建活动

来源:互联网 发布:高仿运动服 淘宝 编辑:程序博客网 时间:2024/06/05 00:15

手动创建活动

1、  取消CreateActivity 操作

2、 在创建的类中重写Activity的onCreate()方法

3、 手动创建布局文件  res/layout目录 ->new->Android XMLFile

Root element:

                   LinearLayout

在布局中添加按钮

                   <Button

            android:id="@+id/button_1"

            android:layout_width="match_parent"

                android:layout_height="wrap_content"

             android:text="Button_1"

        />

在XML中定义一个id @id/id_name

android:text  指定元素中显示的文字内容

布局创建完成后加载到活动当中,即增加onCreate()方法内容:setContentView(R.layout.布局名称)

setContentView()方法中,调用R.layout.布局名称  就可以得到布局中的id;

 

关于活动的注册

所有的活动都要在AndroidManifest.xml中进行注册

<activity

           android:name=".FirstActivity"

           android:label="Love"> //应用程序标签

            <intent-filter>

                <actionandroid:name="android.intent.action.MAIN"/>

              <categoryandroid:name="android.intent.category.LAUNCHER"/>

            </intent-filter>

</activity>

1、<activity> 活动注册标签

2、android:name 用来指定具体注册哪一个活动  格式:“.活动名”

3、android:label 指定活动中标题栏的内容(启动程序后程序显示的名称,可隐藏)

4、<intent-filter >  声明现行活动是这个项目的主活动

 

对于前面说到的隐藏标题栏

隐藏标题栏需在活动文件中的 onCreate() 的方法中添加黑体代码:

    @Override

    protected void onCreate(Bundle savedInstanceState)

    {

       super.onCreate(savedInstanceState);

       requestWindowFeature(Window.FEATURE_NO_TITLE);

       setContentView(R.layout.first_layout);

}

requestWindowFeature(Window.FEATURE_NO_TITLE);不在活动中显示标题栏(程序名称)

 

活动中Toast的使用

Toast  提醒方式

Button button1 = (Button)findViewById(R.id.button_1);

       button1.setOnClickListener(new View.OnClickListener()

       {

           @Override

           public void onClick(View v){

              Toast.makeText(FirstActivity.this,"Hello!", Toast.LENGTH_SHORT).show();

           }

       });

在活动中,findViewById()方法取得布局文件中定义的元素(Button 1),传入R.id.button_1 得到按钮的实例,该方法返回一个View对象(Button)转成Button对象

button1.setOnClickListener  为按钮注册一个监听器,点击按钮执行监听器中的onClick()方法

活动中Menu的使用

Res 目录下新建一个menu文件夹;执行menu->new->Android XMLFile 文件名为main

<item  标签创建一个具体的菜单项

       通过android:id  设定菜单项唯一标识符

           Android:title 设置菜单项名称

在FirstActivity中重写onCreateOptionsMenu()

@Override

    public boolean onCreateOptionsMenu(Menu menu)

    {

       getMenuInflater().inflate(R.menu.main,menu); 

        return true;

    }

    通过getMenuInflater()得到MenuInflater对象,再用它的方法inflate给当前活动创建菜单,方法中传入R.menu.main(指定创建资源来源),第二个参数为菜单项所添加的为哪个Menu对象

菜单响应事件

在FirstActivity中重写onOptionsItemSelected()方法

@Override

    public boolean onOptionsItemSelected(MenuItemitem)

    {

       switch(item.getItemId())

       {

       case R.id.add_item:

           Toast.makeText(this,"你好!", Toast.LENGTH_SHORT).show();

           break;

       case R.id.remove_item:

           Toast.makeText(this,"Hi", Toast.LENGTH_SHORT).show();

           break;

       default:

       }

       return true;

}

通过item.getItemId()判断点击了那个菜单项

0 0
原创粉丝点击