前言
学习设计模式是为了写出更优雅的代码
安卓开发中的监听器
其实认真观察发现,安卓中充斥着大量的监听器, 即观察者模式。下边简单实现下~
- 首先创建一个监听器接口
1 2 3 4 5
| public interface OnClickListener {
void onClick(View view);
}
|
- 然后创建一个监听事件,这里是屏幕点击区域
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| public class View { private String name;
public View(String name) { this.name = name; }
public String getName() { return name; }
public void setName(String name) { this.name = name; } }
|
- 被观察者
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| public class Button {
private OnClickListener listener;
public void setOnClickListener(OnClickListener listener) { this.listener = listener; }
public void click() { if (listener != null) { listener.onClick(new View("点击按钮")); } } }
|
- 测试
1 2 3 4 5 6 7 8 9 10 11 12 13
| @Slf4j public class Ex1 { public static void main(String[] args) { Button button = new Button(); button.setOnClickListener(new OnClickListener() { @Override public void onClick(View view) { log.info("收到事件: {}", view.getName()); } }); button.click(); } }
|
最后
本文到此结束,感谢阅读。如果您觉得不错,请关注公众号【当我遇上你】,您的支持是我写作的最大动力。