Android Studio 弹窗设置

本文介绍了在Android应用开发中常见的三种弹窗显示方法:屏幕下方的Toast、居中显示的Toast和点击多次只显示一次的包装Toast。通过实例代码演示了如何实现这些效果,并分享了实用的Toastutil类便于代码复用。
摘要由CSDN通过智能技术生成

        弹窗能很好的显示当前处理事情的状态,那么这里介绍三种常用的弹窗方法。

1.最常用的弹窗显示

        直接使用Toast 等会在屏幕下方出现一个短延时的弹窗

        首先在Activity中布局好控件以及给id,再就是在Mainactivity中申明id、绑定id,然后设置点击事件,最后就是加上弹窗的代码了

        这就是直接在点击事件里边加入这个弹窗就OK了

Toast.makeText(getApplicationContext(), "Toast", Toast.LENGTH_SHORT).show();    //屏幕下方的弹窗

2.这个就是在屏幕中间显示一个短延时的弹窗

 这个和上面的差不多,稍微修改就好

在点击事件中加入以下代码

Toast toastCenter = Toast.makeText(getApplicationContext(),"居中Toast",Toast.LENGTH_SHORT);  //屏幕居中的弹窗
toastCenter.setGravity(Gravity.CENTER,0,0);
toastCenter.show();

3.第三种的显示效果和第一种是一样的,都是显示在屏幕下方的一个短延时弹窗,但是有一点不同的是,如果是第一种弹窗的话,那么点击三次,它的弹窗就会排队显示三次,显然这种效果不是我们想要的,那么如何让它点击多次,而只显示一次短延时弹窗呢,那么就要用到今天的第三种弹窗代码了

这里我是在Java中新建了一个util文件,然后写了一个Toasttutil,用于之后直接调用即可

这个是Toasttutil中的代码

package util;

import android.content.Context;
import android.widget.Toast;

public class Toastutil {
    public static Toast mtoast;
    public static void showMsg(Context context,String msg){
        if (mtoast==null){
            mtoast = Toast.makeText(context,msg,Toast.LENGTH_LONG);
        }else {
            mtoast.setText(msg);
        }
        mtoast.show();
    }
}

最后就是在点击事件中调用这个Toastutil就好了

 Toastutil.showMsg(getApplicationContext(),"包装过的Toast");     //包装过的Toast弹窗,点击多次会抵消,只出现一次

最后附上我Mainactivity.java中的全部代码!

package com.example.daytwo;

import androidx.appcompat.app.AppCompatActivity;
import util.Toastutil;

import android.os.Bundle;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;

import java.util.zip.Inflater;

public class ToastActivity6 extends AppCompatActivity {

    private Button mbtn_toast_1;
    private Button mbtn_toast_2;
    private Button mbtn_toast_3;
    private Button mbtn_toast_4;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_toast6);

        mbtn_toast_1 = findViewById(R.id.btn_toast_1);
        mbtn_toast_2 = findViewById(R.id.btn_toast_2);
        mbtn_toast_3 = findViewById(R.id.btn_toast_3);
        mbtn_toast_4 = findViewById(R.id.btn_toast_4);

        OnClick onClick = new OnClick();
        mbtn_toast_1.setOnClickListener(onClick);
        mbtn_toast_2.setOnClickListener(onClick);
        mbtn_toast_3.setOnClickListener(onClick);
        mbtn_toast_4.setOnClickListener(onClick);

    }
    class OnClick implements View.OnClickListener{
        @Override
        public void onClick(View view) {
            switch (view.getId()){
                case R.id.btn_toast_1:
                    Toast.makeText(getApplicationContext(), "Toast", Toast.LENGTH_SHORT).show();    //屏幕下方的弹窗
                    break;
                case R.id.btn_toast_2:
                    Toast toastCenter = Toast.makeText(getApplicationContext(),"居中Toast",Toast.LENGTH_SHORT);  //屏幕居中的弹窗
                    toastCenter.setGravity(Gravity.CENTER,0,0);
                    toastCenter.show();

                    break;
                case R.id.btn_toast_3:
                    Toast toastCustom = new Toast(getApplicationContext());
                    LayoutInflater layoutInflater = LayoutInflater.from(ToastActivity6.this);
                    //View.inflate(R.layout.)
                    //toastCustom.setView();
                    break;
                case R.id.btn_toast_4:
                    Toastutil.showMsg(getApplicationContext(),"包装过的Toast");     //包装过的Toast弹窗,点击多次会抵消,只出现一次
                    break;
            }
        }
    }
}

好了!拜拜....................

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值