andriod studio 编写一个程序,点击“发送”按钮,将发送普通广播,内容为编辑框中输入的信息,该应用能收到自己发送的广播信息并以提示信息形式显示。
时间: 2024-02-18 15:58:57 浏览: 137
好的,以下是实现该功能的步骤:
1. 创建一个新的 Android 项目,并在布局文件中添加一个编辑框和一个按钮,并设置按钮的点击事件。
2. 在按钮的点击事件中,通过获取编辑框中的文本内容,并创建一个 Intent 对象,将文本内容作为 Intent 的附加信息。
3. 调用 sendBroadcast() 方法发送广播,将 Intent 对象作为参数传递进去。
4. 在 AndroidManifest.xml 文件中注册一个广播接收器,用于接收该应用发送的广播信息。
5. 在广播接收器的 onReceive() 方法中,获取 Intent 中的附加信息,并以提示信息形式显示出来。
下面是实现该功能的具体代码:
1. 在布局文件中添加一个编辑框和一个按钮:
```xml
<EditText
android:id="@+id/editText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入要发送的广播信息"/>
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="发送"
android:onClick="sendBroadcast"/>
```
2. 在 MainActivity.java 中实现 sendBroadcast() 方法:
```java
public void sendBroadcast(View view) {
// 获取编辑框中的文本内容
String message = ((EditText) findViewById(R.id.editText)).getText().toString();
// 创建一个 Intent 对象,将文本内容作为附加信息
Intent intent = new Intent("com.example.broadcast.SEND");
intent.putExtra("message", message);
// 发送广播
sendBroadcast(intent);
}
```
3. 在 AndroidManifest.xml 文件中注册一个广播接收器:
```xml
<receiver android:name=".MyBroadcastReceiver">
<intent-filter>
<action android:name="com.example.broadcast.SEND"/>
</intent-filter>
</receiver>
```
4. 创建一个广播接收器 MyBroadcastReceiver.java,并在其中实现 onReceive() 方法:
```java
public class MyBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
// 获取 Intent 中的附加信息
String message = intent.getStringExtra("message");
// 以提示信息形式显示附加信息
Toast.makeText(context, "收到广播:" + message, Toast.LENGTH_SHORT).show();
}
}
```
现在你可以运行该应用,输入要发送的广播信息,并点击发送按钮。该应用将发送普通广播,然后收到自己发送的广播信息并以提示信息形式显示出来。
阅读全文
相关推荐
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![7z](https://img-home.csdnimg.cn/images/20241231044736.png)
![7z](https://img-home.csdnimg.cn/images/20241231044736.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)