广泛使用的自定义按钮如何跟踪其 onclick 从哪个类调用?



在我的应用程序中,我有一个自定义按钮,用于许多不同的自定义视图。 根据单击按钮的视图,行为略有不同,我希望在我的自定义按钮类中有一个@OnClick实现来处理每种情况,以避免在每个自定义视图类中使用类似的代码。

有没有办法在@OnClick块中确定按钮是从哪里点击的?

它看起来像

public class customButton extends appcompactimagebutton {  
//stuff  
@OnClick  
public void onbuttonclick(){  
//handles general behavior  
//if (clicked from customViewA) {  
//do A stuff  
//}
}  
}  

然后我有一个自定义视图,里面有一个自定义按钮,我不确定在 if 语句中放什么,如果这甚至是处理这样的事情的正确方法

您可以使用标签属性。在 XML 布局中,添加一行

android:tag="viewname"

到按钮的 XML(在代码中您可以执行.setTag("viewname").然后,您只需修改 onClick 即可使用this.getTag()检查代码,并使用它来识别点击的来源。

最新更新