zoukankan      html  css  js  c++  java
  • android 左右滑屏 遇到 listview

    今天 要实现一个左右滑屏的功能 且滑屏中要装载 listview 

    当单滑屏时冇有问题

    当加载listview 后发现 左右滑屏不能 发现需要 修改 触摸事件分派

    在当前加载 滑屏 和 listview 的Activity 中 为 左右滑屏控件(我用viewgroup) 添加分派

        public boolean dispatchTouchEvent(MotionEvent ev){  
    this.mScrollLayout.onTouchEvent(ev);//在这里先处理下你的手势左右滑动事件
    return super.dispatchTouchEvent(ev);
    }

    其中 mScrollLayout 为 viewgroup

    第二当自定义滑屏控件后发现 只能在启动时加载一次数据,其它时候添加数据到界面 无响应

    如 

    programList.setAdapter(programApapter);

    数据不会更新

    需要修改滑屏控件中的  onLayout

      protected void onLayout(boolean changed, int l, int t, int r, int b) {
    /*if (changed) {*///加了之后第二次不显示
    int childLeft = 0;
    final int childCount = getChildCount();
    for (int i = 0; i < childCount; i++) {
    final View childView = getChildAt(i);
    if (childView.getVisibility() != View.GONE) {
    final int childWidth = childView.getMeasuredWidth();
    childView.layout(childLeft, 0, childLeft + childWidth,
    childView.getMeasuredHeight());
    childLeft += childWidth;
    }
    }
    }
    /*}*/
    重写OnLayout
    不要设置/*if (changed) {*/变量去判断布局是否改变,否则第二次界面刷新的时候不会启用if{}里面的程序



    欢迎各位同学加入 android 技术群 155595043

    另外个人课外应用 交友应用 欢迎同学们来下载讨论:http://www.nduoa.com/apk/detail/181777



  • 相关阅读:
    XML基础
    vue项目使用WebViewJavascriptBridge
    vue cli3 打包部署 Failed to load resource: net::ERR_FILE_NOT_FO 找不到路径问题
    js 将一个数组插入到另一个数组的方法
    div随意拖动小例子
    带转义符的json解释
    银行卡四位数空隔
    收录-获取时间、日期
    封装的一些例子
    easyui-validatebox 验证
  • 原文地址:https://www.cnblogs.com/ondream/p/2382363.html
Copyright © 2011-2022 走看看