Android学习笔记:Toast+Menu

Toast

Toast是在android中非常好的一种提醒方式。在程序中可以用它将一些短小的信息通知给用户,这些信息它可以在一秒或者两秒以后消失,时间可以自己选。也就是可以用来提醒登录成功,登录失败之类的信息提醒,下面我们来用一个具体的例子。
首先需要定义一个Toast触发点,我们让点击按钮时触发这个事件,那么我们就在监听方法中定义

 Toast.makeText(MainActivity.this,"登录成功",Toast.LENGTH_SHORT);
                Intent intent = new Intent(MainActivity.this, EditTextActivity.class);
                startActivity(intent);

我设置的是点击登录按钮之后,除法Toast事件
然后。。我上面的那个代码就错了,因为漏了一个show方法,正确的代码应该是

 public void onClick(View v) {
                Toast.makeText(MainActivity.this,"登录成功",Toast.LENGTH_SHORT).show();
                Intent intent = new Intent(MainActivity.this, EditTextActivity.class);
                startActivity(intent);

            }

在这里插入图片描述
这个时候就会跳出这种小信息。
通过静态方法makeText()创建出一个Toast对象,然后调用show()将Toast显示出来就可以了,所需要传入的三个参数分别是context对象,第二个是所需要显示的参数,第三个是所需要显示的时间

Menu

可能在很多Activity中需要很多菜单,但是在activity中同时创建很多菜单的话又很占用空间,毕竟手机屏幕尺寸有限,所以为了合理化的空出空间,我们可以在活动中使用Menu,下面我们先举个栗子看看用Menu会有怎样的效果。
在这里插入图片描述那我们来看看具体的代码实现
首先先在app\src\res中先新建一个Direcrtory
在这里插入图片描述
然后右击Menu文件夹->New->Menu resoure file,然后点击OK完成创建,然后在main.xml中添加代码

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:id = "@+id/add_friend"
        android:title = "添加好友"/>
    <item android:id="@+id/scan"
        android:title="扫一扫"/>
    <item android:id="@+id/pay"
        android:title="收付款"/>
    <item android:id="@+id/help"
        android:title="帮助与反馈"/>
</menu>

这里我们创建了四个菜单项目,其中item标签就是用来创建具体的某一个菜单项,然后通过android:id给这个菜单项制定一个唯一的标识符,通过title给他一个名称,也就是“扫一扫”“添加好友”

然后回到MainActivity中重写onCreateOptionsMenus()方法

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

通过getMenuInflater()方法能够得到MenuInflater对象,再调用它的inflater()方法就可以给当前活动创建菜单了,inflater方法接收两个参数,第一个参数用来指定菜单的位置,第二个用于指定我们的菜单项需要添加到哪一个Menu对象当中,返回true则是是否显示菜单

这个时候仅仅是显示菜单当然是不够的,我们需要菜单能够响应,那这个时候还需要在MainActivity中重写onOptionsItemSelected()方法

我在代码中用到了Toast弹出点击事件,点击以后弹出你已经点击此菜单

 @Override
    public boolean onOptionsItemSelected(@NonNull MenuItem item) {
        switch (item.getItemId()){
            case R.id.add_friend:
                Toast.makeText(this,"添加朋友",Toast.LENGTH_SHORT).show();
                break;
            case R.id.scan:
                Toast.makeText(this,"扫一扫",Toast.LENGTH_SHORT).show();
                break;
            case R.id.help:
                Toast.makeText(this,"帮助与反馈",Toast.LENGTH_SHORT).show();
                break;
            case R.id.pay:
                Toast.makeText(this,"收付款",Toast.LENGTH_SHORT).show();
                break;
        }
        return true;
    }

然后我们来看看效果
在这里插入图片描述
上面是我模仿微信的菜单
点击以后的效果
在这里插入图片描述
点击了收付款以后的效果
以上。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值