Android中监听逻辑的demo

本文介绍如何通过重写onTouchEvent方法来禁用ViewPager的滑动功能,并提供了一个示例代码。此外,还讲解了如何在包含SlidingMenu的布局中设置侧边栏的滑动功能,确保在使用ViewPager时各页面侧边栏开关能够正常工作。

Demo1:
ViewPager 禁用滑动:
重新定义一个View继承ViewPager重写onTouchEvent的事件:

public boolean onTouchEvent(MotionEvent arg0) {
        // TODO Auto-generated method stub
        return false;  //这个就能禁止ViewPager本身的滑动。
    } 

Demo2:
SlidingMenu侧边栏的滑动, 在每个子pager中,实现该方法。 ViewPager加载多页面的机制,PagerAdpater加载数据时会使侧边栏开关失效。

public void setSlidingMenuEnable(boolean enable) {

        MainActivity mainUi = (MainActivity) mActivity; // 这里的Activity就是MainActivity;

        SlidingMenu slidingMenu = mainUi.getSlidingMenu(); // 得到SldingMenu对象。
                                                            // 以用来控制是否能左划。
        if (enable) {
            // 表示SlidingMenu能滑动。
            slidingMenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN); // 表示能滑动。

        } else {

            slidingMenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_NONE); // 表示不能滑动。
        }

解决:
监听ViewPager页面改变,当选中那个页面就加载哪个页面。 在PagerAdpater中就不要再加载数据了。

    mViewPager.setOnPageChangeListener(new OnPageChangeListener() {

            @Override  //页面选中  arg0就是被选中的页面。
            public void onPageSelected(int arg0) {

                mPagerList.get(arg0).initData();  //当选中那个页面时加载那个页面的数据。这样各自的打开侧边栏的开关都能正常工作。
            }

            @Override  //页面滑动。
            public void onPageScrolled(int arg0, float arg1, int arg2) {
                // TODO Auto-generated method stub

            }

            @Override  //滑动状态改变时,
            public void onPageScrollStateChanged(int arg0) {
                // TODO Auto-generated method stub

            }
        });            //这个是页面改变时的监听。默认刚开始没有需手动加载

mPagerList.get(0).initData();
内容概要:本文介绍了基于贝叶斯优化的CNN-LSTM混合神经网络在时间序列预测中的应用,并提供了完整的Matlab代码实现。该模型结合了卷积神经网络(CNN)在特征提取方面的优势与长短期记忆网络(LSTM)在处理时序依赖问题上的强大能力,形成一种高效的混合预测架构。通过贝叶斯优化算法自动调参,提升了模型的预测精度与泛化能力,适用于风电、光伏、负荷、交通流等多种复杂非线性系统的预测任务。文中还展示了模型训练流程、参数优化机制及实际预测效果分析,突出其在科研与工程应用中的实用性。; 适合人群:具备一定机器学习基基于贝叶斯优化CNN-LSTM混合神经网络预测(Matlab代码实现)础和Matlab编程经验的高校研究生、科研人员及从事预测建模的工程技术人员,尤其适合关注深度学习与智能优化算法结合应用的研究者。; 使用场景及目标:①解决各类时间序列预测问题,如能源出力预测、电力负荷预测、环境数据预测等;②学习如何将CNN-LSTM模型与贝叶斯优化相结合,提升模型性能;③掌握Matlab环境下深度学习模型搭建与超参数自动优化的技术路线。; 阅读建议:建议读者结合提供的Matlab代码进行实践操作,重点关注贝叶斯优化模块与混合神经网络结构的设计逻辑,通过调整数据集和参数加深对模型工作机制的理解,同时可将其框架迁移至其他预测场景中验证效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值