是否可以编写一个只在其参数中获取Activity并且可以响应该活动中按下的所有按钮的函数?
我已尝试通过ViewTreeObserver注册某些内容,并且可能使用decorView但没有成功。
答案 0 :(得分:0)
是的,可能。这个想法是:
您在该Activity中定义一个接口。例如:
public interface listener { public void method(活动活动); }
在您的活动中,您应该公开一个注册侦听器的注册方法。
public void setListener(Listener listener) { this.listener =侦听器; }
每当发生任何按钮按下/单击事件时,请从“活动”中调用接口方法。
exampleButton.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View arg0) {
listener.listenToButton(this);
}
现在任何Class实现的侦听器接口都必须实现listenToButton(Activity activity)
方法,这样他们就可以在任何Button按下(或点击)事件时获得对Activity的引用