【Android 进阶】 Android 回调理解

Android 事件处理方法:

  1. 监听事件
  2. 回调事件

阅读过不少关于回调事件文章,每次理解一点点,但在实际项目中不能灵活运用
项目中负责“设置”开发,考虑到activity 与 dialog 通讯,Google 反馈使用“回调机制处理”

再此记录回调机制使用方案,方便下次参考使用:

###1.定义回调接口

public interface IDialogClickListener {

    public void doPositiveClick();

    public void doNegativeClick();

}

###2.dialog 提供触发条件方法;

private IDialogClickListener mListener;

@Override
    public void onClick(View v) {
        if (v.getId() == R.id.dialog_confirm_btn) {
        	if (mListener!=null) {
        		mListener.doPositiveClick();
				
			}
        }else if (v.getId() == R.id.dialog_cancel_btn) {
        	if (mListener!=null) {
        		mListener.doNegativeClick();
				
			}
		}
        dismiss();
    }


public void setListener(IDialogClickListener mListener) {
		this.mListener = mListener;
	}

3. Activity 中注册并提供回调实现

//Activity 集成自定义接口
public class ApplyBetaActivity extends Activity implements IDialogClickListener


dialog=new ApplyBetaDialog(ApplyBetaActivity.this,isBetaPassed);
//dialog 注册回调事件;
dialog.setListener(this);


// Dialog 中 按确定键时回调此方法
@Override
public void doPositiveClick() {		
		loadPageApplyBetaDta(APPLY_BETA_CHECK);		
}

// Dialog 中 按取消键时回调此方法
@Override
public void doNegativeClick() {		
	loadPageApplyBetaDta(APPLY_BETA_ADD);			
}

为了便于理解,Android 中Button 是一个很好的回调事件:

  1. Activity implement OnClickListener;

  2. Button 注册回调;

mButton.setOnChickListener(this);
  1. 必须实现接口的方法:
 public void onClick(View v) {
    //  doWork();
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值