显示吐司WHILE对话框是否打开?

问题描述:

这是我正面临的一个非常简单的问题。基本上,我请求运行时的权限,但我也希望在同一时间作为许可请求显示举杯:显示吐司WHILE对话框是否打开?

培训相关代码:

if ((ActivityCompat.checkSelfPermission(MainActivity.this, Manifest.permission.RECORD_AUDIO) != PackageManager.PERMISSION_GRANTED 
            || ActivityCompat.checkSelfPermission(MainActivity.this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED)) { 
           ActivityCompat.requestPermissions(MainActivity.this, new String[]{ 


             Manifest.permission.RECORD_AUDIO, 
             Manifest.permission.WRITE_EXTERNAL_STORAGE}, 4); 

           Toast.makeText(MainActivity.this, "You must enable BOTH", Toast.LENGTH_LONG).show(); 

的问题是快速,面包消失(可能少于0.5秒),只要权限对话框出现。

enter image description here

这是Android上的错误吗?还是有一些我失踪的工作?

敬酒不会永久显示。敬酒的整个概念是它弹出然后消失。如果你想要更长久的东西,你必须自己实现它。

+0

我知道,我一直在使用,只要祝酒我能记得的:)这里的问题是,系统自己的对话框干扰了我的祝词,迫使它在权限对话框出现时突然消失。 –

它是android中默认的权限对话框,所以没有解决this.ya的问题,但是如果你创建了自定义对话框,那么你可以将它显示在你想要的位置。

吐司消息显示持续2秒的短时间或持续3.5秒的持续时间,并且不能更改。

如果您希望显示更长时间的吐司消息,则需要连续显示。

for (int i=0; i < 5; i++){ 
    Toast.makeText(this, "Your toast message", Toast.LENGTH_SHORT).show(); 
} 

它会显示你的烤面包10秒。

希望它能帮助:)

设法使上下文

Toast.makeText(getApplicationContext(),"YOUR TEXT",Toast.LENGTH_LONG).show();