【问题标题】:toast message does not show up [closed]吐司消息不显示[关闭]
【发布时间】:2021-10-06 00:16:51
【问题描述】:

当我运行我的应用程序并单击按钮时,我需要看到一条消息,但 Tost 不起作用.. 有什么问题?

class MainActivity : AppCompatActivity() {
    lateinit var binding: ActivityMainBinding
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        binding = ActivityMainBinding.inflate(layoutInflater)
        setContentView(binding.root)

        binding.buttonSubmitUsername.setOnClickListener {
            if (binding.textInputUsername.text.toString().isEmpty()){
                Toast.makeText(this,"abc",Toast.LENGTH_SHORT).show()
            }else{
                val intent = Intent(this,QustionActivity::class.java)
                startActivity(intent)
            }
        }
    }
}

【问题讨论】:

  • 你是说这个 toast 没有在你期望的时候出现吗?能否在 Toast 行设置调试断点以确保满足条件?

标签: android kotlin toast android-toast


【解决方案1】:

如果您也为您的MainActivity 提供完整的布局文件会很有帮助,但假设根据命名约定textInputUsername,您似乎正在尝试直接从您的TextInputEdittext 获取文本,您将拥有TextInputLayout 以及您的布局文件中。试试这样的:

binding.buttonSubmitUsername.setOnClickListener {

      if (binding.textInputLayout.edittext?.text.toString().isEmpty()){ // `textInputLayout` is the id of your TextInputLayout
          Toast.makeText(this,"abc",Toast.LENGTH_SHORT).show()
       }else{
          val intent = Intent(this,QustionActivity::class.java)
          startActivity(intent)
        }
      }
   }
}

但是对于确切的解决方案,您需要您的布局文件或更多详细信息,请务必说明这是否解决了问题:)

【讨论】:

    【解决方案2】:

    试试这个:

    Toast.makeText(this@MainActivity,"abc",Toast.LENGTH_SHORT).show()
    

    【讨论】:

      【解决方案3】:

      我的模拟器出了点问题... 如果您有同样的问题,您应该尝试其他设备。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-09-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-01-26
        • 1970-01-01
        相关资源
        最近更新 更多