首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

播音学习Demo

2012-08-03 
广播学习Demo广播简单学习Demopackage com.amaker.broadcastimport android.app.Activityimport android

广播学习Demo
广播简单学习Demo

package com.amaker.broadcast;import android.app.Activity;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;/** * 1,点击按钮发送一个广播 * 2,注册广播时有两种注册:一,在配置文件中静态注册 二、在代码中动态注册 * 注意:注册方法写在:onResume里面,注销方法写在:onPause里面 * */public class MainActivity extends Activity {    private Button btn_send;    public static final String MY_ACTION = "com.amaker.broadcast.MY_ACTION";    MyReceiver r = new MyReceiver();    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);                btn_send = (Button) findViewById(R.id.button1);                btn_send.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {send();}});    }    //发送一个广播    void send(){    Intent intent = new Intent(MY_ACTION);    String msg = "我给你发了一个广播,是否收到?";    intent.putExtra("msg", msg);    sendBroadcast(intent);    }    //动态注册广播    @Override    protected void onResume() {    super.onResume();    IntentFilter filter = new IntentFilter();    filter.addAction(MY_ACTION);    registerReceiver(r, filter);    }    //注销广播    @Override    protected void onPause() {    super.onPause();    unregisterReceiver(r);    }}


package com.amaker.broadcast;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.widget.Toast;public class MyReceiver extends BroadcastReceiver{@Overridepublic void onReceive(Context context, Intent intent) {String msg = intent.getStringExtra("msg");//收到广播,简单Toast显示一下Toast.makeText(context, msg, Toast.LENGTH_LONG).show();}}


AndroidManifest.xml:
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android"      package="com.amaker.broadcast"      android:versionCode="1"      android:versionName="1.0">    <uses-sdk android:minSdkVersion="8" />    <application android:icon="@drawable/icon" android:label="@string/app_name">        <activity android:name=".MainActivity"                  android:label="@string/app_name">            <intent-filter>                <action android:name="android.intent.action.MAIN" />                <category android:name="android.intent.category.LAUNCHER" />            </intent-filter>        </activity><!-- 先把这个静态的注册注释掉 --><!--<receiver android:name="MyReceiver"><intent-filter><action android:name="com.amaker.broadcast.MY_ACTION"/></intent-filter></receiver> -->   </application></manifest>



热点排行