获悉点击了弹出窗口中的哪个按钮

Posted

技术标签:

【中文标题】获悉点击了弹出窗口中的哪个按钮【英文标题】:Get informed which button in popup window has been clicked 【发布时间】:2013-10-07 09:38:02 【问题描述】:

我正在尝试实现我的小型 android 应用程序的一项功能。 有一个图像按钮,当我单击它时会出现一个弹出窗口。根据用户单击该弹出窗口中的哪个按钮,该图像按钮应相应地更改其图像。 就像我在弹出窗口中单击 1 时一样,我应该通知按钮将图像更新为 1。

谁能告诉我怎么做?

【问题讨论】:

分享一些你试过的代码。你的弹出窗口在哪里,那个按钮在哪里?? 【参考方案1】:

您可以使用以下方法

public void setTabFor(Button btn) 

        for (Button button : btnArray) 
        if (button == btn) 

                if (button == button_one) 
                    Utils.setTabButton(R.drawable.left_selected, button_one);

                 else if (button == button_two) 

                    Utils.setTabButton(R.drawable.middle_selected, button_two);

                 else if (button == button_three) 
                    Utils.setTabButton(R.drawable.middle_selected, button_three);

                 else 
                    Utils.setTabButton(R.drawable.right_selected, button_four);

                

Utils类中的setTabButton用于设置backgrounddrawable:

public static void setTabButton(int drawable, Button... btn) 
        for (Button button : btn) 
            button.setBackgroundResource(drawable);
        
    

【讨论】:

我在 android 文档中找不到 setTabButton。有这个功能吗? 请查看我的帖子..我已将 setTabButton 作为 mu Utils 类中的静态方法。您可以按照同样的方法进行操作。【参考方案2】:

您应该为弹出窗口中的每个按钮分配一个ID。然后您必须实现一个listener,它将通知(并将 ID 传递给)您的对象(负责图像按钮)单击了按钮,并且您的对象将根据收到的 ID 更新图像按钮。

【讨论】:

所以,我应该实现 onClick 功能。但是,如何将此 ID 传递给该按钮?我应用哪种技术在此按钮和弹出窗口之间进行通信?【参考方案3】:

试试这个, 首先,您必须为您在应用程序中使用的所有图像按钮分配唯一的 ID。然后您在 ID 的帮助下单击哪个按钮,您可以根据自己的选择显示按钮。

希望它能帮助您并尽快解决您的问题。

【讨论】:

以上是关于获悉点击了弹出窗口中的哪个按钮的主要内容,如果未能解决你的问题,请参考以下文章

需要确定在 JQuery 移动弹出窗口中单击的按钮并据此执行操作

打开新标签时检查是不是启用了弹出窗口阻止程序

如何在弹出窗口中打开新选项卡?

Web 应用程序中的 Appium:无法在通知弹出窗口中点击允许权限按钮

bootstrap:弹出框内的图像超出了窗口大小

模态弹出窗口中的溢出