文章仅是自己学习《第一行代码》的总结笔记。
注册活动时的相关事项
在AndroidManifest.xml文件中注册了Activity的格式:
<activity android:name = ".Activity"
android:label = "This is Activity">
<intent-filter>
<action android:name = "android.intent.action.MAIN">
<category android:name = "android.intent.category.LAUNCHER">
</intent-filter>
</activity>
android:name:指定具体注册那一个活动,自己的activity都要制定一个名字,就是建立Java文件时对activity取的名字,省略前面一串包名是因为manifest标签中通过package属性设置了程序的包名;
android:label:指定活动中的显示在最上方的标题栏内容,也是显示在Launcher中的应用程序的名称。
隐藏标题栏
方法一:
在Activity的onCreate()方法中添加以下代码:
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉标题加入此段代码
setContentView(R.Layout.xxx_layout);//在res目录的layout文件中建立的xml文件。
}
注意这句代码一定要在 setContentView()之前执行,不然会报错。
方法二:
res目录下的values目录下的styles.xml文件中添加如下代码:
<style name="AndroidTheme" parent="android:Theme.Wallpaper">
<item name="android:windowNoTitle">true</item>
</style>
然后在AndroidManifest.xml文件中activity设置属性时设置如下:
android:theme="@style/AndroidTheme"
再次启动便可看到标题已经去掉。
Toast的添加
Toast是一种提示信息,以什么方式显示,显示什么内容由各开发者的实机情况自己决定。
而Toast的添加方式如下(例子是以一个button触发Toast提示信息):
private Button button;
button = (Button)findViewById(R.id.button);
button.setOnClickListener(new OnclickListener()){
@Override
public void onClick(View v){
Toast.makeText(MainActivity.this, "显示Toast", Toast.LENGTH_SHORT).show();
}
}
对Toast.makeText()方法的三个参数介绍:
第一个参数是Context,是Toast要求的上下文信息;
第二个参数有两种传入方法:
1.直接传入要显示的信息的字符串;
2.可以在String的资源文件中先配置好内容,再通过R.string.xxx的方式调用。
第三个参数Toast的显示时常内置常量是Toast.LENGTH_SHORT和Toast.LENGTH_LONG。
这样在点击button的时候就会显示代码中设置的Toast(一定不能忘记要加.show()方法,不然不会有Toast显示)。
Menu按键的使用
res文件中有menu这个文件,并且配置了main.xml的文件,里面是配置menu菜单的相关选项,添加一个menu选项的格式如下:
<item android:id="@+id/add"
android:title="@string/add"/> //显示的名称
<item android:id="@+id/remove"
android:title="remove">
...
activity中的代码如下:
重写onCreateOptionsMenu
onCreateOptionsMenu(Menu menu){
getMenuInflater().infalte(R.menu.main, menu);
return true;//允许创建的菜单显示出来
}
getMenuInflater()方法能够得到 MenuInflater 对象,再调用它的 inflate()方法就可以给当前活动创建菜单。
菜单的响应事件需要重写onOptionItemSelected():
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
switch(id){
case R.id.action_settings:
break;
case R.id.add:
Toast.makeText(MainActivity.this, "增加内容", Toast.LENGTH_SHORT).show();
break;
case R.id.remove:
Toast.makeText(MainActivity.this, "减少内容", Toast.LENGTH_SHORT).show();
break;
default:
break;
}
return true;
}
销毁活动
销毁一个活动直接在想要在每个动作响应后调用finish();方法即可。
eg:
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});