`
暴风雪
  • 浏览: 384915 次
  • 性别: Icon_minigender_2
  • 来自: 杭州
社区版块
存档分类
最新评论

[Android]在Avtivity中注册监听器

阅读更多

package com.example.xmlbroadcast;
import android.app.Activity;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;

public class MainActivity extends Activity {

	private TextView tx1=null;
	private Button bt1=null;
	private Button bt2=null;
	private Button bt3=null;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        bt1=(Button)findViewById(R.id.btn);
        bt1.setText("发出广播");
        bt1.setOnClickListener(new bt1listener());
        bt2=(Button)findViewById(R.id.btn2);
        bt2.setText("注册监听器");
        bt2.setOnClickListener(new bt2listener());
        bt3=(Button)findViewById(R.id.btn3);
        bt3.setText("注销监听器");
        bt3.setOnClickListener(new bt3listener());
        tx1=(TextView)findViewById(R.id.txv);
    }

    class bt1listener implements OnClickListener{

		public void onClick(View v) {
			// TODO Auto-generated method stub
			tx1.setText("fuck");
			Intent it1=new Intent();
			it1.setAction(Intent.ACTION_EDIT);
			MainActivity.this.sendBroadcast(it1);
		}
    	
    }

	public	TestReceiver mr1 = new TestReceiver(); //创建监听器对象
    class bt2listener implements OnClickListener{

		public void onClick(View v) {
			IntentFilter if1=new IntentFilter();
			if1.addAction(Intent.ACTION_EDIT);
			MainActivity.this.registerReceiver(mr1,if1);
		}
    	
    }

    class bt3listener implements OnClickListener{

		public void onClick(View v) {
			MainActivity.this.unregisterReceiver(mr1);
		}
    	
    }
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.activity_main, menu);
        return true;
    }
}
 这里要注意一点,在注销监听器的时候,一定要保证监听器存在,否则程序会报错!
0
0
分享到:
评论

相关推荐

    Android在Fragment中实现监听触摸事件

    在使用时,我们需要在Fragment中初始化监听器,然后将其注册到Activity中,同时在监听器中监听手势动作。例如,我们可以在Fragment中定义一个onTouchListener,然后将其注册到Activity中。 onTouchListener = new ...

    android 外部类作为事件监听器类

    在Android中,通常我们会在Activity或Fragment这样的UI组件内部定义匿名内部类来实现监听器,这样可以直接访问到UI组件。但有时,为了代码复用或逻辑清晰,我们可能会选择将监听器实现放在一个独立的外部类中。这种...

    Android 管理Activity中的fragments

    3. **监听回退栈变化**:通过调用`addOnBackStackChangedListener()`,你可以添加一个监听器来响应回退栈的变化,这在跟踪用户导航历史时非常有用。 执行Fragment交易是通过FragmentManager进行的。当你需要添加、...

    Android部分Activity篇.pdf

    6. onDestroy():Activity即将被销毁时调用,是生命周期中的最后一个回调,可以在这里做最后的清理,如取消注册监听器、释放大内存对象等。 在某些特殊情况下,Activity可能不会经过onStop()直接调用onDestroy(),...

    android自定义接口,然后在activity中实现点击监听,调用getView解决滑动错位的问题

    在Android开发中,自定义接口并将其应用于Activity与Adapter之间的通信是常见的做法,尤其是在处理点击事件和解决滑动错位问题时。这篇文章将深入探讨如何通过这个方法来优化用户界面的交互体验。 首先,让我们理解...

    Android Activity生命周期

    例如,在 onCreate() 方法中,我们可以加载布局、设置监听器等。在 onResume() 方法中,我们可以恢复 Activity 的状态,例如恢复游戏的进度。在 onPause() 方法中,我们可以保存 Activity 的状态,例如保存游戏的...

    诠释Android中Activity间的参数互传

    发送者创建并发送本地广播,接收者注册监听器接收。 ```java // 发送 LocalBroadcastManager.getInstance(context).sendBroadcast(new Intent("ACTION_NAME")); // 接收 LocalBroadcastManager.getInstance...

    Android Service与Activity交互

    在Android应用开发中,Service和Activity是两个非常重要的组件,它们各自扮演着不同的角色。Service主要负责在后台执行长时间运行的任务,而Activity则用于与用户交互。本示例"Android Service与Activity交互"旨在...

    android 运算器 不同activity间的跳转

    在Activity中,我们需要找到这个Button并为其设置监听器: ```java Button button = findViewById(R.id.button); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v...

    Android activity生命周期示例

    这是Activity生命周期的最后一个回调,适合清理资源和取消注册监听器。 在实际开发中,开发者需要注意以下几点: - 使用`onSaveInstanceState(Bundle outState)`来保存Activity的状态,以防因配置改变(如屏幕旋转...

    android中的窗口activity高级应用

    开发者通常会在Activity的事件监听器(如OnClickListener)中处理这些动作,根据用户的行为执行相应的业务逻辑。 **Invoke Other App** 在Android中,一个应用可以启动另一个已安装的应用,比如打开一个网页、发送...

    android通过手势切换activity

    - 创建GestureDetector的监听器(GestureListener),并在监听器中处理手势事件。例如,在onFling()方法中,我们可以检测到左右滑动,从而触发Activity的切换。 3. **切换Activity**: - 当识别到需要切换...

    Android_activity向fragment传值 对应45

    在Android应用开发中,Activity和Fragment是两个核心组件。Activity作为应用程序的主要入口点,而Fragment则可以看作是Activity中的可重用模块,它们共同构建了丰富的用户界面。当需要在Activity与Fragment之间进行...

    android activity示例

    在这个方法里,开发者可以进行清理工作,如取消注册监听器。 在Android开发中,理解并正确处理Activity生命周期至关重要,这可以确保应用在各种情况下表现良好,避免数据丢失和用户体验下降。同时,合理使用对话框...

    android全局事件监听器

    在Android开发中,全局事件监听器是一种非常实用的设计模式,它允许开发者在整个应用程序范围内监听特定的事件,而无需在每个需要响应的类中都添加监听代码。标题中的"android全局事件监听器"指的是一个实现此类功能...

    android根据layout文件生成activity及自动注册 Demo

    在Android开发中,通常我们需要为每个用户界面创建一个对应的Activity,并手动在主应用程序的AndroidManifest.xml文件中注册这些Activity。然而,这样的过程可能会变得繁琐,尤其是在项目变得庞大时。"android根据...

    android中Activity和Intent的关系

    在Android操作系统中,Activity和Intent是两个至关重要的概念,它们构成了Android应用交互的核心。Activity可以理解为用户界面的“窗口”,而Intent则扮演着不同组件间通信的“信使”角色。在这里,我们将深入探讨这...

    完美实现将activity作为dialog弹窗进行弹出

    在Android开发中,有时我们可能需要将一个Activity展示为Dialog样式,以便于用户交互,比如在主界面之上显示一个半透明、大小可调整的小窗口。本文将深入探讨如何完美实现将Activity作为Dialog弹窗进行弹出,并且...

    android各组件详解-activity

    此外,Activity还可以处理触摸、拖动等其他类型的事件,这主要通过监听器或自定义View来实现。 #### 三、接收来自Activity的信息 在Android中,Activity之间可以通过Intent传递数据。例如,从一个Activity启动另一...

    Android锁屏状态下显示Activity

    在Android系统中,有时开发者需要在用户设备锁屏的状态下显示特定的Activity,以提供更为直接的用户交互体验。比如来电提醒、紧急通知或者闹钟等。这些功能的实现涉及到了Android系统的电源管理、窗口管理和通知策略...

Global site tag (gtag.js) - Google Analytics