Android的activity的监听页面所有事件问题

在项目中很容易遇到 不同类型控件输入表单 根据表单的是否输入了内容来判断显示 关联按钮的状态变化 在数量少的情况可以对每一个控件监听并筛选条件满足更新 但是对数量很多 TextView EditText等都有的情况下 会增加代码量 ,我目前是 重写activity的dispatchTouchEvent 方法(按需求处理) 根据事件行为处理 刷新调用根布局控件 根据getChildCount方法数量 取出view 类型 (按需求的view)的内容情况 条件判断 以下是我简单测试

  @Override
    public boolean dispatchTouchEvent(MotionEvent ev) {
        switch (ev.getAction()) {
            case MotionEvent.ACTION_UP:
                LogUtil.e(TAG, "收支抬起了更改");
                updateBtStyle();
                break;
        }
        return super.dispatchTouchEvent(ev);
    }

    private void updateBtStyle() {
        isEmpty = false;
        for (int i = 0; i < mRootLL.getChildCount(); i++) {
            mRootLL.getChildAt(i).setClickable(false);
            View view = mRootLL.getChildAt(i);
            if (view instanceof TextView) {
                if (TextUtils.isEmpty(((TextView) view).getText().toString().trim())) {
                    isEmpty = true;
                    break;
                }
            }
        }
}

注: 这里是我对手指抬起监听 不影响使用,如果有更好的方法请写留言 不胜感激!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android Studio是一个流行的开发环境,用于开发Android应用程序。监听事件是用于处理用户交互,例如点击、滑动、触摸等事件。在Android Studio中,可以使用各种监听事件来响应用户的行为,从而在应用程序中执行相应的操作。 以下是一些常用的Android Studio监听事件: 1. 点击事件(OnClickListener):当用户点击一个按钮、文本框或其他可点击的元素时触发。 2. 触摸事件(OnTouchListener):当用户在屏幕上移动或按下/释放手指时触发。 3. 滑动事件(OnSwipeListener):当用户滑动屏幕时触发,通常用于切换页面或卡片。 4. 焦点事件(OnFocusChangeListener):当一个控件获得或失去焦点时触发。 5. 菜单事件(OnMenuItemClickListener):当用户在菜单中点击一个菜单项时触发。 6. 计时器事件(TimerTask):使用计时器来定期执行任务,例如更新UI或执行后台任务。 7. 生命周期事件(LifecycleListeners):使用生命周期回调方法来响应应用程序的生命周期变化,例如Activity的创建、销毁和重启。 要使用这些监听事件,可以在相应的控件上设置相应的监听器,或者使用Java或Kotlin中的相应接口和类来实现。在监听事件的处理方法中,可以执行所需的逻辑,例如更新UI、执行网络请求或保存数据。 需要注意的是,监听事件的使用取决于具体的需求和场景,因此选择适当的监听事件非常重要。同时,还应该考虑到性能和用户体验的影响,避免过度使用和滥用监听事件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值