我可以将Click Listener添加到自定义Toast中吗?>

问题描述 投票:2回答:3

我正在为我的应用程序创建自定义吐司。我需要在Toast上添加的按钮上添加OnClickListener。一切正常,我可以看到该按钮,但它对OnClick没有响应。任何想法。

示例代码:

Button button = new Button(getApplicationContext());
            button.setText("Click Me");
            button.setOnClickListener(new OnClickListener() {

                @Override
                public void onClick(View v) {
                    ProgressDialog.show(getApplicationContext(), "Hello", "nothing");

                }
            });
        button.setLayoutParams(new     ViewGroup.LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT));
        Toast toast = new Toast(getApplicationContext());
        toast.setGravity(Gravity.BOTTOM, 0, 0);
        toast.setMargin(0,-80);
        toast.setDuration(Toast.LENGTH_LONG);
        toast.setView(button);  
        toast.show();

此外,我已经尝试通过向这样的按钮添加onTouchListener来进行尝试。

 button.setOnTouchListener(new OnTouchListener() {
    @Override
    public boolean onTouch(View v, MotionEvent event) {
        ProgressDialog.show(getApplicationContext(), "Hello", "nothing");
        return false;
    }
});

但是它也不起作用。

我正在为我的应用程序创建自定义吐司。我需要在Toast上添加的按钮上添加OnClickListener。一切正常,我可以看到该按钮,但它对OnClick没有响应。任何...

android onclicklistener toast buttonclick android-toast
3个回答
1
投票

您不应该在Button中加入Toast。只需显示该按钮,然后一段时间后将其隐藏即可。您可以通过在现有布局上方添加RelativeLayout来实现。这样的事情应该起作用:


0
投票

Crouton库解决了问题。希望对其他人也有帮助。


0
投票

在这里您可以全面了解Toast in Android Studio。您不能在Toast中添加单击侦听器,但可以在Toast中添加图像并创建自定义Toast。

© www.soinside.com 2019 - 2024. All rights reserved.