android studio 写一个简单的内容观察者代码模板
时间: 2023-10-05 14:14:03 浏览: 36
以下是一个简单的内容观察者代码模板:
```java
public class MyObserver implements ContentObserver {
private Context mContext;
public MyObserver(Context context) {
super(null);
mContext = context;
}
@Override
public void onChange(boolean selfChange) {
super.onChange(selfChange);
// 处理内容变化的逻辑
}
@Override
public void onChange(boolean selfChange, Uri uri) {
super.onChange(selfChange, uri);
// 处理特定 Uri 的内容变化的逻辑
}
public void registerObserver(Uri uri) {
mContext.getContentResolver().registerContentObserver(uri, true, this);
}
public void unregisterObserver() {
mContext.getContentResolver().unregisterContentObserver(this);
}
}
```
使用方法如下:
```java
MyObserver myObserver = new MyObserver(context);
myObserver.registerObserver(someUri);
// 处理内容变化的逻辑
myObserver.unregisterObserver();
```
其中,`someUri` 是要监听的 Uri,可以是任何需要监听的内容提供者的 Uri。在实现 `onChange()` 方法中,可以根据实际需求处理内容变化的逻辑。`registerObserver()` 方法用于注册观察者,`unregisterObserver()` 方法用于取消注册。注意,观察者必须在不需要监听时及时取消注册,否则会造成资源浪费。