在活动中使用 Toast
Toast 是 Android 系统提供的一种非常好的提醒方式,在程序中可以使用它将一些短小的信息通知给用户,这些信息会在一段时间后自动消失,并且不会占用任何屏幕空间
下面是如何在活动中使用 Toast:
首先需要定义一个弹出 Toast 的触发点,正好界面上有个按钮,那我们就让点击这个按钮的时候弹出一个 Toast,
在 onCreate()方法中添加代码:
1 protected void onCreate(Bundle savedInstanceState) { 2 super.onCreate(savedInstanceState); 3 requestWindowFeature(Window.FEATURE_NO_TITLE); 4 setContentView(R.layout.first_layout); 5 Button button1 = (Button) findViewById(R.id.button_1); 6 button1.setOnClickListener(new OnClickListener() { 7 @Override 8 public void onClick(View v) { 9 Toast.makeText(FirstActivity.this, "You clicked Button 1", 10 Toast.LENGTH_SHORT).show(); 11 } 12 }); 13 }
在活动中,通过 findViewById()方法获取到在布局文件中定义的元素,这里传入 R.id.button_1,来得到按钮的实例,这个值是刚才在 first_layout.xml 中通过 android:id 属性指定的。
findViewById()方法返回的是一个 View 对象,需要向下转型将它转成 Button对象。得到了按钮的实例之后,通过调用 setOnClickListener()方法为按钮注册一个监听器,点击按钮时
就会执行监听器中的 onClick()方法。因此,弹出 Toast 的功能要在onClick()方法中编写:
通过静态方法 makeText()创建出一个 Toast 对象,然后调用 show()将 Toast 显示出来就可以了。这里需要注意的是,makeText()方法需要传入三个参数。
第一个参数是 Context,也就是 Toast 要求的上下文,由于活动本身就是一个 Context 对象,因此这里直接传入FirstActivity.this即可。
第二个参数是Toast显示的文本内容,
第三个参数是Toast显示的时长,有两个内置常量可以选择 Toast.LENGTH_SHORT 和 Toast.LENGTH_LONG。
在活动中使用 Menu
首先在 res 目录下新建一个 menu 文件夹,右击 res 目录→New→Directory,输入文件夹名menu,点击 ok。接着在这个文件夹下再新建一个名叫 main 的菜单文件,右击 menu 文件
夹→New→ File,输入名字main,选择XML文件类型,如图所示:
![](https://img2020.cnblogs.com/blog/2024377/202102/2024377-20210204180249329-1894011249.png)
然后在 main.xml 中添加如下代码:
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/add_item"
android:title="Add"/>
<item
android:id="@+id/remove_item"
android:title="Remove"/>
</menu>
这里我们创建了两个菜单项,其中<item>标签就是用来创建具体的某一个菜单项,然后通过 android:id给这个菜单项指定一个唯一标识符,通过 android:title给这个菜单项指定一个名称。
然后打开 MainActivity,重写 onCreateOptionsMenu()方法,代码如下所示:
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
仅仅让菜单显示出来是不够的,我们定义菜单不仅是为了看的,关键是要菜单真正可用才行,因此还要再定义菜单响应事件。在 FirstActivity 中重写 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;
}
销毁一个活动
1、按一下 Back 键就可以销毁当前的活动了
2、也可以用finish();方法
1 button1.setOnClickListener(new OnClickListener() { 2 @Override 3 public void onClick(View v) { 4 finish(); 5 } 6 });