相关疑难解决方法(0)

如何更新BroadcastReceiver中的UI

我创建了一个应用程序,我在我的主类(Main Activity)中注册了一个广播接收器,每当我收到BroadcastReceiver我想要更新的UI时,我想要显示一个警告框或设置我的一些文本视图MainActivity.我收到接收器中的所有值但无法设置它们,有人可以帮助我,以便我可以更新我的UI BroadcastReceiver.

我的BroadcastReceiver类是MainActivity的内部类,如下所示: -

public class MainActivity extends Activity {

   ..........

public static class NissanTabBroadcast extends BroadcastReceiver {
        @Override
        public void onReceive(Context context, Intent intent) {
            SharedPreferences shrd = context.getSharedPreferences("NissanGallery", context.MODE_WORLD_READABLE);
            type = shrd.getString("type", "null");
            badges = shrd.getString("badge_count", "null");

            //badge_tips_text.setText(badges);
            /*Editor edit =  shrd.edit();
            edit.remove("type");*/

            Toast.makeText(context, "" + type + "\n" + badge_tips_text.getText().toString(), Toast.LENGTH_LONG).show();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

任何帮助都会很明显

谢谢

android broadcastreceiver

23
推荐指数
4
解决办法
5万
查看次数

广播接收机的呼叫活动方法

在主活动中,加载了一个包含一些输入字段和一个提交按钮的布局.单击提交按钮时,onClick处理程序方法会将短信发送回同一个手机号码:

SmsManager sms = SmsManager.getDefault();
sms.sendTextMessage(number, null, "hi", null, null);
Run Code Online (Sandbox Code Playgroud)

定义的广播接收器拦截消息:

public class SmsReceiver extends BroadcastReceiver {

@Override
public void onReceive(Context context, Intent intent) {
    Bundle pdusBundle = intent.getExtras();
    Object[] pdus=(Object[])pdusBundle.get("pdus");
    SmsMessage messages=SmsMessage.createFromPdu((byte[]) pdus[0]);
    if(messages.getMessageBody().contains("hi")){
        abortBroadcast();
    }

}
}
Run Code Online (Sandbox Code Playgroud)

现在,从广播接收器,我想调用一个函数(带参数),这是我的主要活动.那可能吗?如果是,我应该在广播接收器中添加什么样的代码?

android

14
推荐指数
2
解决办法
3万
查看次数

标签 统计

android ×2

broadcastreceiver ×1