語音交友app開發,點選按鈕出現彈窗的實現方式

雲豹科技程式設計師發表於2021-10-12

語音交友app開發為了帶給使用者更好的使用體驗,往往會進行一些互動設計,其中點選按鈕出現彈窗就是互動設計的一種,一般來說,在語音交友app開發過程中彈窗還會分為不同種類,今天介紹幾種常用的彈窗。

1.最常用的一種彈窗

Toast.makeText(HomeActivity2.this, "設定為自動模式", Toast.LENGTH_SHORT).show();

2.第二種

這個是自己寫一個方式,就是使用方法

Toastutil.showMsg(HomeActivity2.this,"設定為自動模式");

首先在Java中新建一個util檔案,然後寫一個Toasttutil,用於之後直接呼叫即可
在這裡插入圖片描述

這個就是Toasttutil中的程式碼

package util;
 import android.content.Context;import android.widget.Toast;
 //** 使用這個方法 彈窗可實現短時間多次點選按鈕,彈窗只彈一次; 但是不管按哪個按鈕首次彈窗會顯示APP名稱 **//
 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_SHORT);
        }else {
            mtoast.setText(msg);
        }
        mtoast.show();
    }}

在語音交友app開發中使用這個方法的彈窗,如果在短時間內多次點選,那麼就只會出現一次彈窗,而且不管按哪個按鈕,首次按下去彈出的彈窗會顯示APP名稱,所以這種我用的不是很多。

3.第三種

這是在網上找到的一種方法,也是自定義的方法

Toast01.showShort(HomeActivity2.this,"設定為自動模式");

同樣的是在Util中新建一個Toasttutil01檔案
在這裡插入圖片描述

附上Toasttuil01中的程式碼

package util;
 import android.content.Context;import android.widget.Toast;
 //** 使用這個方法 可以解決彈窗顯示APP名稱的問題,且首次彈窗也不會顯示APP名稱,但是點選幾次按鈕,彈窗就會彈出幾次;所以使用這個彈出請結合 Utils 使用即可解決!  **//
 public class Toast01 {
    public static Toast mToast;
    public static void showShort(Context context, CharSequence message) {
            Toast mToast = Toast.makeText(context, null, Toast.LENGTH_SHORT);
            mToast.setText(message);
            mToast.show();
    }
 }

在語音交友app開發中使用第三種的方法可以不顯示語音交友app開發的名稱,但是不能解決短時間內多次點選只顯示一次的問題,那麼有沒有什麼辦法能既讓語音交友app開發名不顯示,又能讓短時間內多次點選只單次顯示呢!答案是當然有的。

最後這個也是自定義一個方法,但是這個是設定一下讓按鈕的兩次之間的點選間隔時間,那麼這樣設計就可以解決第二種第三種彈窗出現的問題了。
在這裡插入圖片描述

這個是程式碼

package util;
 //** 這是點選按鈕的時間間隔設定 **//
 public  class Utils {
    // 兩次點選按鈕之間的點選間隔不能少於1000毫秒
    private static final int MIN_CLICK_DELAY_TIME = 2000;
    private static long lastClickTime;
 
    public static boolean isFastClick() {
        boolean flag = false;
        long curClickTime = System.currentTimeMillis();
        if ((curClickTime - lastClickTime) >= MIN_CLICK_DELAY_TIME) {
            flag = true;
        }
        lastClickTime = curClickTime;
        return flag;
    }}

這種就是需要結合第三種的彈窗使用

首先在語音交友app開發按鈕的點選事件中呼叫這第四種方法,然後再在Utils.isFastClick()中呼叫彈窗方法三即可

if (Utils.isFastClick()){                   // 兩次點選按鈕之間的點選間隔不能少於1000毫秒
                        Toast01.showShort(HomeActivity2.this,"設定為手動模式");  //使用Toastuil.showShort彈窗不會顯示APP名稱
                    }

最後附上MainActivity中的程式碼

package com.example.myapp;
 import androidx.appcompat.app.AppCompatActivity;import util.Toast01;import util.Utils;
 import android.annotation.SuppressLint;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.TextView;
 
 public class HomeActivity2 extends AppCompatActivity {
 
    private TextView mtv_zhu2;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_home2);
 
        mtv_zhu2 = findViewById(R.id.tv_zhu2);
        mtv_zhu2.setSelected(true);
        Button mbtn_sd = findViewById(R.id.btn_sd);
        Button mbtn_zd = findViewById(R.id.btn_zd);
 
        OnClick onClick = new OnClick();
        mbtn_sd.setOnClickListener(onClick);
        mbtn_zd.setOnClickListener(onClick);
 
    }
 
    class OnClick implements View.OnClickListener{
        @SuppressLint("NonConstantResourceId")
        @Override
        public void onClick(View view) {
            switch (view.getId()){
                case R.id.btn_sd:
                    mtv_zhu2.setText("手動模式         手動模式");
 
                    if (Utils.isFastClick()){                   // 兩次點選按鈕之間的點選間隔不能少於1000毫秒
                        Toast01.showShort(HomeActivity2.this,"設定為手動模式");  //使用Toastuil.showShort彈窗不會顯示APP名稱
                    }
                    break;
                case R.id.btn_zd:
                    mtv_zhu2.setText("自動模式         自動模式");
 
                    if (Utils.isFastClick()){
                        Toast01.showShort(HomeActivity2.this,"設定為自動模式");
                    }
                    break;
            }
        }
    }

以上便是“在語音交友app開發中,如何實現點選按鈕出現彈窗?”的全部內容,希望對大家有幫助。
本文轉載自網路,轉載僅為分享乾貨知識,如有侵權歡迎聯絡雲豹科技進行刪除處理
原文連結:https://blog.csdn.net/x97666/article/details/120691958?utm_medium=distribute.pc_category.none-task-blog-hot-8.nonecase&depth_1-utm_source=distribute.pc_category.none-task-blog-hot-8.nonecase


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69996194/viewspace-2795577/,如需轉載,請註明出處,否則將追究法律責任。

相關文章