gpt4 book ai didi

android - 如何在android中立即显示覆盖旧Toast的新Toast

转载 作者:太空狗 更新时间:2023-10-29 15:36:19 30 4
gpt4 key购买 nike

我在 android 中以对话框的形式显示了一组值,点击任何项目,显示特定的 toast。现在,如果我在下一刻点击此列表(数组)上的其他项目,该特定 toast 会在短时间(大约 5 秒)后显示,直到显示旧 toast 。 如果我想在我选择/点击列表中的其他项目后立即显示新的 Toast,我该怎么做

那么有人能告诉我实现这一目标的逻辑是什么吗?

例如考虑这段代码-

     String NumberOfItems[] = { "1", "2", "3" };
Activity mActivity;
int id =0;
AlertDialog.Builder builder = new AlertDialog.Builder(mActivity);
builder.setIcon(R.drawable.ic_launcher);
builder.setTitle(R.string.dialog_heading);
builder.setSingleChoiceItems(NumberOfItems, id, new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialog, int id)
{

switch(id)
{
case 0:
Toast.makeText(mActivity.getBaseContext(),"Item selected is 1",Toast.LENGTH_SHORT).show();
break;
case 1:
Toast.makeText(mActivity.getBaseContext(),"Item selected is 2",Toast.LENGTH_SHORT).show();
break;
case 2:
Toast.makeText(mActivity.getBaseContext(),"Item selected is 3",Toast.LENGTH_SHORT).show();
break;

}

}
});
AlertDialog alertDialog = builder.create();
alertDialog.show();

现在显示包含 3 个项目的对话框,点击第一个项目显示 “选择的项目是 1” 很快我点击下一个项目但它显示 “选择的项目是 2” ~5 秒后。但是,如果我想在点击第二个项目时立即显示我该怎么办?

简而言之刷新 Toast 的逻辑是什么?

非常感谢任何帮助。

最佳答案

您可以在 Activity 中初始化单个 Toast。然后在每次点击时更改其文本。

Toast mToast = Toast.makeText( this  , "" , Toast.LENGTH_SHORT );

switch(id)
{
case 0:
mToast.setText( "Item selected is 1" );
mToast.show();

break;
case 1:
mToast.setText( "Item selected is 2" );
mToast.show();
break;
case 2:
mToast.setText( "Item selected is 3" );
mToast.show();
break;
}
}
});

我认为这对你有用。

更多info

关于android - 如何在android中立即显示覆盖旧Toast的新Toast,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20867681/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com