Do-Now—团队Scrum 冲刺博客二

各个成员今日完成的任务

  • 侯泽洋:完成奖励页面设计,完成奖励从云端拉取到本地:完成奖励从云端拉取到本地
  • 周亚杰:完成个人中心页面设计,登录界面美化:注册登录界面美化
  • 王志伟:完成倒计时功能,并对页面进行优化:添加倒计时功能
  • 仇夏:燃尽图设计,登录注册界面设计
  • 唐才铭:完成登录页动画设计,并进行引导页设计

项目燃尽图

站立式会议照片

各个成员遇到的问题

侯泽洋

//define interface
    public interface OnRecyclerViewItemClickListener {
        void onItemClick(View view, int data);

    }
    public interface OnRecyclerItemLongListener{
        void onItemLongClick(View view,int position);
    }

    public void setOnItemClickListener(OnRecyclerViewItemClickListener listener) {
        this.mOnItemClickListener = listener;
    }
    public void setOnItemLongClickListener(OnRecyclerItemLongListener listener){
        this.mOnItemLong =  listener;
    }

(2)在ViewHolder中实现接口并重写方法

      @Override
        public void onClick(View v) {
            if (mOnItemClickListener != null) {
                //注意这里使用getTag方法获取数据
                mOnItemClickListener.onItemClick(v, getAdapterPosition());
            }
        }

        @Override
        public boolean onLongClick(View v) {
            if(mOnItemLong != null){
                mOnItemLong.onItemLongClick(v,getPosition());
            }
            return true;
        }

(3)在活动实现这两个方法

adapter.setOnItemClickListener(new AlarmPresetAdapter.OnRecyclerViewItemClickListener() {
            @Override
            public void onItemClick(View view, int data) {
                T.showShort(context, "点击了");
            }
        });
        adapter.setOnItemLongClickListener(new AlarmPresetAdapter.OnRecyclerItemLongListener() {
            @Override
            public void onItemLongClick(View view, int position) {
                T.showShort(context, "长按了");
            }
        });
  • 问题2:getPosition()方法变红,getAdapterPosition()是什么意思,为什么时触发非Toast事件时会没有响应?
  • 解决方案:参考博客:Recyclerview.getLayoutPosition()问题

使用了ViewHolder的getLayoutPosition方法,此方法返回的pos值与onBindViewHolder方法传入的position值有可能不同。
根据SDK中的解释,在Recyclerview 进行添加、移除item等操作时,position位置可能会变化,而所有的adapter的刷新并不总是及时的,只有这个方法返回的才是当前item经过一些变换后所处的真正位置。

getPosition()方法已过时,getAdapterPosition()方法的刷新不够及时,使用时可能会出错,而使用getLayoutPosition()方法则没有这种顾虑,最终在两个onclick方法都使用了getLayoutPosition()方法,解决问题。

周亚杰

  • 问题:界面的属性、控件完成设计 主活动代码却无法调用编写好的drawable下xml文件,无法正常显示界面,并且R文件会报红不能用。
  • 解决方案:将控件、属性单独写成布局文件放在layout下,在主布局文件中用include调用

仇夏

问题记录及解决过程:
为了完成好需求规格说明书,我们在码云上新建了一个项目,然后想要将它和自己的Android Studio连上。在这个过程中我遭遇到了不少的问题。
首先,不太记得如何连接码云的我先上百度找来了一个教程,挺详细的,AndroidStudio新建项目推送到码云上。我跟着这个教程一步步的去实现。

然后我确实出现了如教程中一样的结果。
但之后遇到的问题就不是如此,我在终端输入命令行,但一直出现错误

之后,我向队友寻求帮助。


结果出现了超时的问题,就是使用git clone重新checkout源也受到影响,长时间checkout不出来。
然后找了一个很好的解决方法。
解决Gitlab的The remote end hung up unexpectedly错误

唐才铭

  • 遇到的问题:启动页面白屏
    解决:合并功能时误删了 setContentView(R.layout.activity_splash);,补上之后即可。

王志伟

寻找R文件
关于在ViewPager的子页面中不能跳转的问题

明日各个成员的任务安排

  • 侯泽洋:完成数据的修改功能,及每日任务页面的设计及代码编写
  • 周亚杰:个人中心页面再优化及其逻辑代码的编写及博客编写
  • 王志伟:页面跳转,任务页面设计
  • 仇夏:树苗成长过程设计及数据库内容学习、使用
  • 唐才铭:进行树苗功能的开发,及引导页代码优化上传

各个成员今日对项目的贡献量

  • 侯泽洋:4
  • 周亚杰:4
  • 王志伟:3
  • 仇夏:3
  • 唐才铭:4
posted @ 2018-12-11 21:43  ◕‿◕  阅读(227)  评论(0编辑  收藏
© 2018 GitHub, Inc.