📜  如何在 Android 中自定义 Toast?

📅  最后修改于: 2022-05-13 01:55:23.085000             🧑  作者: Mango

如何在 Android 中自定义 Toast?

Toast一条反馈消息。它只需要很少的空间来显示,它显示在活动的主要内容之上,并且只保持很短的时间段可见。在本文中,我们将学习如何在 android 中自定义 Toast。因此,我们将通过制作一个简单的应用程序来显示 Toast 来理解这一点。

分步实施

第 1 步:创建一个新项目

想要一个更快节奏和更具竞争力的环境来学习 Android 的基础知识吗?
单击此处前往由我们的专家精心策划的指南,旨在让您立即做好行业准备!

要在 Android Studio 中创建新项目,请参阅如何在 Android Studio 中创建/启动新项目。请注意,选择Java作为编程语言。

步骤 2:使用 activity_main.xml 文件

导航到app > res > layout > activity_main.xml并将以下代码添加到该文件中。下面是activity_main.xml文件的代码。

XML


  
    


Kotlin
import android.graphics.Color
import android.os.Bundle
import android.view.Gravity
import android.view.ViewGroup
import android.widget.Button
import android.widget.TextView
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
  
class MainActivity : AppCompatActivity() {
  
    lateinit var btn: Button
  
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
  
        btn = findViewById(R.id.button1)
        val text = "GeeksForGeeks"
  
        btn.setOnClickListener {
            showToast(text)
        }
    }
  
    private fun showToast(text: String) {
  
        val toast = Toast.makeText(this, text, Toast.LENGTH_SHORT)
  
        // Set the position of the toast
        toast.setGravity(Gravity.CENTER_HORIZONTAL, 0, 0) 
  
        val viewGroup = toast.view as ViewGroup?
        
          // Get the TextView of the toast
        val textView = viewGroup!!.getChildAt(0) as TextView 
        
        // Set the text size
        textView.textSize = 20f 
        
        // Set the background color of toast
        viewGroup!!.setBackgroundColor(Color.parseColor("#079A0F")) 
  
        // Display the Toast
        toast.show() 
    }
}


步骤 3:使用 MainActivity.kt 文件

转到MainActivity.kt文件并参考以下代码。下面是 MainActivity.kt 文件的代码。代码中添加了注释以更详细地理解代码。这里我们将绑定视图并编写应用程序的逻辑。

科特林

import android.graphics.Color
import android.os.Bundle
import android.view.Gravity
import android.view.ViewGroup
import android.widget.Button
import android.widget.TextView
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
  
class MainActivity : AppCompatActivity() {
  
    lateinit var btn: Button
  
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
  
        btn = findViewById(R.id.button1)
        val text = "GeeksForGeeks"
  
        btn.setOnClickListener {
            showToast(text)
        }
    }
  
    private fun showToast(text: String) {
  
        val toast = Toast.makeText(this, text, Toast.LENGTH_SHORT)
  
        // Set the position of the toast
        toast.setGravity(Gravity.CENTER_HORIZONTAL, 0, 0) 
  
        val viewGroup = toast.view as ViewGroup?
        
          // Get the TextView of the toast
        val textView = viewGroup!!.getChildAt(0) as TextView 
        
        // Set the text size
        textView.textSize = 20f 
        
        // Set the background color of toast
        viewGroup!!.setBackgroundColor(Color.parseColor("#079A0F")) 
  
        // Display the Toast
        toast.show() 
    }
}

这样我们的应用程序就准备好了。

输出: