博博blog 博博blog

Android-探究活动(一)

in 学习分享 read (158) 文章转载请注明来源!

###Android中元素的属性
@+id/button_1
android:id是给元素定义一个唯一的标识符
android:layout_width="match_parent"
width:宽,match_parent:表示让当前元素和父元素一样宽。
android:layout_height="wrap_content"
height:高,wrap_content:表示元素高度刚好只要能包含里面的内容就好。

setContentView()
给当前活动加载一个布局
例:setContentView(R.layout.first_layout);

###AndroidManifest中配置主活动
<activity>标签内部加入<intent-filter>并添加以下代码,还可以使用android:label指定活动标题栏内容

<activity
    android:name=".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>

###在活动中使用Toast

Button button1 = (Button) findViewById(R.id.button_1);
button1.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        Toast.makeText(FirstActivity.this,"You clicked Button 1",Toast.LENGTH_SHORT).show();
    }
});
  • findViewById(R.id.button_1)
    获取布局文件中定义的元素,返回的是View对象,强转为Button对象。

  • 调用setOnClickListener()为按钮注册一个监听器,点击按钮就会执行onClick()方法。

  • 通过静态方法makeText()创建一个Toast对象,调用show()方法让其显示。

  • 传入三个参数,

    • 第一个Context上下文,本活动就是Context对象,所以直接传入;
    • 第二个,要显示的内容;
    • 第三个显示的时长,还有Toast.LENGTH_LONG可以选择。

###活动中使用Menu
#####res目录下新建menu

  • 右击res目录→New→Directory

#####menu下新建一个main菜单文件

  • 右击menu文件夹→New→Menu resource file
<item
    android:id="@+id/add_item"
    android:title="Add"/>
<item
    android:id="@+id/remove_item"
    android:title="Remove"/>

标签用来创建某一个菜单项的

回到FirstActivity中重写onCreateOptionsMenu()方法,

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

getMenuInflater()方法能得到MenuInflater对象,在调用它的inflate()方法,就可以给当前活动创建菜单了,inflate()接收两个参数

  1. 指定哪一个资源文件来创建菜单,
  2. 第二个,菜单项将添加到哪一个Menu对象当中,
    直接使用传入的menu参数。
  • 返回true,代表显示菜单。

给菜单定义事件,重写onOptionsItemSelected()方法,

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

调用item.getItemId()来判断我们点击的哪一个菜单项,然后加入逻辑处理。
###销毁一个活动
修改监听器代码,添加finish();
效果和按下Back键一样的。

2017.04.22

学习分享android
PREVIOUS NEXT
雷姆
拉姆
音乐加载中...
0:00