您的位置:首页 > 其它

简单实现 BroadcastReceiver 回调

2017-10-19 10:26 543 查看
自定义接口UpMainData

public interface UpMainData {
String Start();
String Stop();
}

创建MyReceiver04,实现UpMainData接口

public class MyReceiver04 extends BroadcastReceiver implements UpMainData{
@Override
public void onReceive(Context context, Intent intent) {
String key = intent.getStringExtra("key");
if(key.equals("1")){
Start();
}
if(key.equals("2")){
Stop();
}
}

@Override
public String Start() {
//	写入自己要实现的功能
String a="开始";
return a;
}

@Override
public String Stop() {
String a="停止";
return a;
}
}


private Button bt,bt1;
private TextView tv;
private MyReceiver04 receiver04;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
bt=(Button)findViewById(R.id.bt);
bt1=(Button)findViewById(R.id.button);
tv=(TextView)findViewById(R.id.textView);
//注册广播,接口回调不能使用静态注册,只能动态注册
receiver04=new
9aea
MyReceiver04();
IntentFilter intentFilter=new IntentFilter();
intentFilter.addAction("UpdateUI");
registerReceiver(receiver04,intentFilter);
bt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent=new Intent();
intent.putExtra("key","1");
intent.setAction("UpdateUI");
sendBroadcast(intent);
String a = receiver04.Start();
tv.setText(a);
}
});
bt1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent=new Intent();
intent.putExtra("key","2");
intent.setAction("UpdateUI");
sendBroadcast(intent);
String a = receiver04.Stop();
tv.setText(a);
}
});
}

@Override
protected void onDestroy() {
super.onDestroy();
unregisterReceiver(receiver04);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: