Android Studio实现弹窗设置

本文实例为大家分享了Android Studio实现弹窗设置的具体代码,供大家参考,具体内容如下

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

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;
            }
        }
    }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Android实现隐私政策弹窗与链接功能

    1.效果展示 先展示效果,看看是不是你需要的. 2.具体实现 2.1按钮美化 在drawable文件夹下新建button_shape.xml <?xml version="1.0" encoding="utf-8" ?> <!--相当于做了一张圆角的图片,然后给button作为背景图片--> <shape xmlns:android="http://schemas.android.com/apk/res/android&quo

  • Android如何实现锁屏状态下弹窗

    前言 想在锁屏上面实现弹窗,第一个想法就是利用 WindowManager 设置 Window 的 Flag,通过设置 Flag 的显示优先级来让窗口显示在锁屏的上面. 接下来就是试验可能相关的 Window Type 属性,验证该方案是否可行. 在尝试各个 Window Type 属性之前需要明确各个 Type 所需要的权限,下面是 com.android.internal.policy.impl.PhoneWindowManager.checkAddPermission 的源码: publi

  • Android监听输入法弹窗和关闭的实现方法

    用过ios的都知道ios上输入法关闭的同时会自动关闭输入框,那么在android上如何实现监听输入法弹出和关闭呢?本篇文章就为你提供了一种可靠的实现方式. 演示效果视频地址 首先在AndroidManifest中配置 android:windowSoftInputMode="adjustResize" 这样每次输入法弹出和关闭都会重新计算高度实现把布局顶上去的效果 然后我们要自定义一个布局,监听布局大小变化 public class CheckSoftInputLayout exten

  • Android屏幕锁屏弹窗的正确姿势DEMO详解

    在上篇文章给大家介绍了Android程序开发仿新版QQ锁屏下弹窗功能.今天通过本文给大家分享android锁屏弹窗的正确姿势. 最近在做一个关于屏幕锁屏悬浮窗的功能,于是在网上搜索了很多安卓屏幕锁屏的相关资料,鉴于网上的资料比较零碎,所以我在这里进行整理总结.本文将从以下两点对屏幕锁屏进行解析: 1. 如何监听系统屏幕锁屏 2. 如何在锁屏界面弹出悬浮窗 如何监听系统屏幕锁屏 经过总结,监听系统的锁屏可以通过以下两种方式: 1) 代码直接判定 2) 接收广播 1) 代码直接判定 代码判断方式,也

  • Android仿支付宝支付从底部弹窗效果

    我们再用支付宝支付的时候,会从底部弹上来一个对话框,让我们选择支付方式等等,今天我们就来慢慢实现这个功能 效果图 实现 主界面很简单,就是一个按钮,点击后跳到支付详情的Fragment中 package com.example.hfs.alipayuidemo; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.wi

  • Android自定义弹窗提醒控件使用详解

    Android中原生的Dialog弹窗提醒控件样式单一,有时候并不能满足我们的项目需求,而且一个工程里面有时候会在多处都用到弹窗提醒的功能,代码会出现大量的冗余,工作之余,就自己实现了这么一个弹窗提醒控件.自定义控件继承自我们的Dialog,样式自定义,弹窗中的文字可通过数组参数初始化,Item个数实现了动态添加,和数组长度一致.对话框底端可展示一个Item(如:确定)或两个Item(如:确定   取消),通过参数设置.废话不多说,直接上代码: 1.自定义对话框的背景样式,在res/values

  • Android开发实现仿京东商品搜索选项卡弹窗功能

    本文实例讲述了Android开发实现仿京东商品搜索选项卡弹窗功能.分享给大家供大家参考,具体如下: 一.效果图: 二.思路: (1)首先顶部布局由通过LinearLayout水平按比重平均分配各个item宽度. (2)每个item设置两种状态,点击状态与未点击状态 (3)弹窗由PopupWindow实现 三.布局 (1)item布局 <!-- 优先筛选条件布局 --> <RelativeLayout android:id="@+id/rl_priority_filter&quo

  • Android仿支付宝微信支付密码界面弹窗封装dialog

    一,功能效果 二,实现过程 1,先写xml文件:dialog_keyboard.xml 注意事项 (1),密码部分用的是一个线性布局中6个TextView,并设置android:inputType="numberPassword",外框是用的一个有stroke属性的shape, (2),1-9数字是用的recycleview ,每个item的底部和右边有1dp的黑线,填充后形成分割线. (3),recycleview 要设置属性  android:overScrollMode=&quo

  • Android实现气泡布局/弹窗效果 气泡尖角方向及偏移量可控

    Android 自定义布局实现气泡弹窗,可控制气泡尖角方向及偏移量. 效果图 实现 首先自定义一个气泡布局. /** * 气泡布局 */ public class BubbleRelativeLayout extends RelativeLayout { /** * 气泡尖角方向 */ public enum BubbleLegOrientation { TOP, LEFT, RIGHT, BOTTOM, NONE } public static int PADDING = 30; public

  • Android实现弹窗进度条效果

    Android自定义进度条主要是修改ProgressBar的style,弹窗则是在Dialog里显示ProgressBar. 直接上代码. 在style.xml里加入如下代码: <style name="ProgressBar_Mini" parent="@android:style/Widget.ProgressBar.Horizontal"> <item name="android:maxHeight">50dip&l

随机推荐