MoMo: 6차 스프린트

yxnsx·2021년 1월 21일
0

MoMo: Sprint

목록 보기
6/7
post-thumbnail

Sprint🔥

사전적 의미로는 단거리 레이스 또는 단거리 전력질주라는 뜻으로,
짧은 단위의 계획을 바탕으로 프로젝트를 발전시켜 나아가는 방법론의 하나이다.
MoMo 팀에서는 3일 단위의 스프린트를 활용하여 프로젝트를 진행하기로 했다 !

✔️ 각 스프린트마다 목표, 알게된 지식들, 느낀점, 다음 스프린트에 대한 다짐 정리


기간

2021-01-13(수) ~ 2021-01-15(금)


목표

  • 데이트피커 바텀시트 선택값 반영 후 스크롤뷰 리프레시
  • 서버통신시 화면 깜빡거림 현상 해결
  • 스크롤 상태에 따른 스와이프 아이콘 visibility 설정
  • README.md 작성


알게된 지식들

1️⃣ fadeIn 또는 fadeOut 효과 구현

  • view.animate
    view.animate를 통해 alpha값과 duration을 조정하면 fadeIn 또는 fadeOut되는 로딩 애니메이션 효과를 구현할 수 있다!
      private fun fadeInSwipeUpImage() {
          viewBinding.imageViewSwipeUp.apply {
              visibility = View.VISIBLE
              alpha = 0f
              animate()
                  .alpha(1f)
                  .setDuration(resources.getInteger(android.R.integer.config_longAnimTime).toLong())
                  .setListener(null)
          }
      }

      private fun fadeOutSwipeUpImage() {
          viewBinding.imageViewSwipeUp.apply {
              visibility = View.VISIBLE
              alpha = 1f
              animate()
                  .alpha(0f)
                  .setDuration(resources.getInteger(android.R.integer.config_longAnimTime).toLong())
                  .setListener(object : AnimatorListenerAdapter() {
                      override fun onAnimationEnd(animation: Animator) {
                          viewBinding.viewLoading.visibility = View.INVISIBLE
                      }
                  })
          }
      }

2️⃣ 스크롤 상태에 따른 스와이프 아이콘 visibility 설정

  • RecyclerView.OnScrollListener()
    RecyclerView.OnScrollListener()를 이용하면 스크롤 상태를 감지할 수 있다.
    SCROLL_STATE_IDLE - 스크롤 중이 아닌 상태
    SCROLL_STATE_DRAGGING - 스크롤 중인 상태
      private fun setListeners() {
          viewBinding.recyclerViewGradient.addOnScrollListener(scrollListener)  
      }
        
      private val scrollListener = object : RecyclerView.OnScrollListener() {
          override fun onScrollStateChanged(recyclerView: RecyclerView, newState: Int) {
              super.onScrollStateChanged(recyclerView, newState)
              when (newState) {
                  SCROLL_STATE_IDLE -> fadeInSwipeImage()
                  SCROLL_STATE_DRAGGING -> fadeOutSwipeImage()
              }
          }
      }


느낀 점

  • ✳️ 좋았던 점
    데모데이 전날에 끝나는 정말 마지막 스프린트라 더더욱 아쉬운 마음이 들지 않게끔 임하려고 했던 것 같다. 덕분에 큰 문제 없이 여유롭게(!) MoMo를 잘 완성해낼 수 있었다! 특히 내가 맡은 부분을 다 끝낸 후에 계절학기 때문에 바빴던 다른 안드 친구를 도와줄 수 있었던 점도 너무 좋았다!! 내가 다른 누군가에게 도움이 될 수 있다니,, 굉장히 새로운 경험이었다

  • 아쉬웠던 점
    가장 아쉬운 점은 앱잼이 끝났다는 점..
    하지만 아직 릴리즈가 남았으니 아쉬운 마음은 접어두기로 했다!

0개의 댓글