android 关于注册广播发送广播的问题
private BroadcastReceiver mBatInfoReceiver = new BroadcastReceiver() { public void onReceive(Context context, Intent intent) { String action = intent.getAction(); if (Intent.ACTION_BATTERY_CHANGED.equals(action)) { intLevel = intent.getIntExtra("level", 0); intScale = intent.getIntExtra("scale", 100); onBatteryInfoReceiver(intLevel,intScale); } } }; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); mButton01 = (Button)findViewById(R.id.myButton1); mButton01.setOnClickListener(new Button.OnClickListener() { public void onClick(View v) { registerReceiver ( mBatInfoReceiver, new IntentFilter(Intent.ACTION_BATTERY_CHANGED) ); } }); }public void onBatteryInfoReceiver(int intLevel, int intScale) { final Dialog d = new Dialog(ey06_02.this); d.setTitle(R.string.str_dialog_title); d.setContentView(R.layout.mydialog); Window window = d.getWindow(); window.setFlags ( WindowManager.LayoutParams.FLAG_BLUR_BEHIND, WindowManager.LayoutParams.FLAG_BLUR_BEHIND ); TextView mTextView02 = (TextView)d.findViewById(R.id.myTextView2); mTextView02.setText ( getResources().getText(R.string.str_dialog_body)+ String.valueOf(intLevel * 100 / intScale) + "%" ); Button mButton02 = (Button)d.findViewById(R.id.myButton2); mButton02.setOnClickListener(new Button.OnClickListener() { public void onClick(View v) { unregisterReceiver(mBatInfoReceiver); d.dismiss(); } }); d.show(); } }