zoukankan      html  css  js  c++  java
  • android广播的使用

    原文链接:http://www.cnblogs.com/zyw-205520/archive/2013/01/25/2876882.html

    在Activity中,注册广播的一个Demo。

    总共分3步

    第一步:定义一个BroadcastReceiver广播接收类:

    view plain
    private BroadcastReceiver mBroadcastReceiver = new BroadcastReceiver(){ 
            @Override 
            public void onReceive(Context context, Intent intent) { 
                String action = intent.getAction(); 
                if(action.equals(ACTION_NAME)){ 
                    Toast.makeText(Test.this, "处理action名字相对应的广播", 200); 
                } 
            } 
             
        }; 

     

    第二步:注册该广播:

    view plain
    public void registerBoradcastReceiver(){ 
            IntentFilter myIntentFilter = new IntentFilter(); 
            myIntentFilter.addAction(ACTION_NAME); 
            //注册广播       
            registerReceiver(mBroadcastReceiver, myIntentFilter); 
        } 

     

    第三步:触发响应

     

    view plain
    mBtnMsgEvent = new Button(this); 
            mBtnMsgEvent.setText("发送广播"); 
            mBtnMsgEvent.setOnClickListener(new OnClickListener() { 
                @Override 
                public void onClick(View v) { 
                    Intent mIntent = new Intent(ACTION_NAME); 
                    mIntent.putExtra("yaner", "发送广播,相当于在这里传送数据"); 
                     
                    //发送广播 
                    sendBroadcast(mIntent); 
                } 
            });

    package com.zyw.Broadcast; 
     
    import android.app.Activity; 
    import android.content.BroadcastReceiver; 
    import android.content.Context; 
    import android.content.Intent; 
    import android.content.IntentFilter; 
    import android.os.Bundle; 
    import android.view.View; 
    import android.view.View.OnClickListener; 
    import android.widget.Button; 
    import android.widget.LinearLayout; 
    import android.widget.Toast; 
     
    public class Test extends Activity{ 
        private final String ACTION_NAME = "发送广播"; 
        private Button mBtnMsgEvent = null; 
         
        protected void onCreate(Bundle savedInstanceState){ 
            super.onCreate(savedInstanceState); 
             
            //注册广播 
            registerBoradcastReceiver(); 
             
            LinearLayout mLinearLayout = new LinearLayout(this); 
            mBtnMsgEvent = new Button(this); 
            mBtnMsgEvent.setText("发送广播"); 
            mLinearLayout.addView(mBtnMsgEvent); 
            setContentView(mLinearLayout); 
             
            mBtnMsgEvent.setOnClickListener(new OnClickListener() { 
                @Override 
                public void onClick(View v) { 
                    Intent mIntent = new Intent(ACTION_NAME); 
                    mIntent.putExtra("yaner", "发送广播,相当于在这里传送数据"); 
                     
                    //发送广播 
                    sendBroadcast(mIntent); 
                } 
            }); 
        } 
         
        private BroadcastReceiver mBroadcastReceiver = new BroadcastReceiver(){ 
            @Override 
            public void onReceive(Context context, Intent intent) { 
                String action = intent.getAction(); 
                if(action.equals(ACTION_NAME)){ 
                    Toast.makeText(Test.this, "处理action名字相对应的广播", 200); 
                } 
            } 
             
        }; 
         
        public void registerBoradcastReceiver(){ 
            IntentFilter myIntentFilter = new IntentFilter(); 
            myIntentFilter.addAction(ACTION_NAME); 
            //注册广播       
            registerReceiver(mBroadcastReceiver, myIntentFilter); 
        } 
    }
    文章转载于网络,如有侵权,请原创留言;内容如有不妥,请各位园友提宝贵意见或建议。所有文章均处于编辑状态。。。。。。百度贴吧:流水小桥吧 如有问题,请点击页面左上角“给我写信”发邮件留言!
  • 相关阅读:
    uwsgi配置详解
    一文搞定SonarQube接入C#(.NET)代码质量分析
    推荐一款 Diffy:Twitter 的开源自动化测试工具
    推荐一款简单易用线上引流测试工具:GoReplay
    kanboard安装及使用
    性能相关博客
    性能工具之JMeter5.0核心类StandardJMeterEngine源码分析
    使用sshkey连接github等服务器
    [转]关于浏览器css选择器性能优化
    [转]你不淘汰自己,就会被别人淘汰
  • 原文地址:https://www.cnblogs.com/flyoung/p/4929784.html
Copyright © 2011-2022 走看看