안드로이드 당겨서 글쓰기 같은것도 가능한가요?

조회수 589회

안드로이드 리사이클뷰 같은거에서 당겨서 새로고침 기능이 있잖아요

근데 전 당겼을때 글쓰기라든가 다른 작업을 하고 싶은데

당겼을때 나오는 이미지를 바꿀수 있는 방법이 있을까요?(항상 원형 새로고침 아이콘만 나오잖아요)

감사합니다

  • (•́ ✖ •̀)
    알 수 없는 사용자

1 답변

  • SwipeRefreshLayoutNestedScrollingParent, NestedScrollingChild 를 implement 하여 scroll 동작을 구현하며, swipe 시 나타나는 circle view 는 CircleImageViewCircleProgressDrawable 을 설정하여 구현 됩니다.

    scroll 값에 따라 CircleImageView 의 visible state 변경과 scale 동작을 처리하며 CircleProgressDrawable 의 rotation 동작을 처리하는 구조로 볼 수 있습니다.

    당겼을때 정확히 어떤 동작을 구현 하시려는지 잘 모르겠지만, 이미지만 변경하는 방법이 궁금하시다면 아래와 같이 처리 할 수 있습니다.

    override fun onCreate(savedInstanceState: Bundle?) {
            super.onCreate(savedInstanceState)
            setContentView(R.layout.activity_main)
            for (i in 0 until swipeLayout.childCount) {
                val child = swipeLayout.getChildAt(i)
                if (child::class.java.simpleName == "CircleImageView") {
                    (child as ImageView).apply {
                        setImageDrawable(null) //CircleProgressDrawable 제거
                        background = null //circle background 제거
                        setImageResource(R.mipmap.ic_launcher) //임의의 아이콘 설정
                    }
                    break
                }
            }
        }
    
    • (•́ ✖ •̀)
      알 수 없는 사용자
    • 항상 답변 너무 감사합니다 매번 너무 친절한 답변 너무 감사합니다 알 수 없는 사용자 2018.9.10 22:30
    • 저는 취미로 앱을 개발하고 있는데요 pistolcaffe님 처럼 자세히 좀 더 깊이 공부하고 싶은데 어떤책이나 방법으로 해야 될지 여쭤봐도 될까요? 앱을 30개 정도는 만들어봤지만 아직 너무 너무 초보 같아서요 항상 너무 감사합니다^^ 알 수 없는 사용자 2018.9.10 22:31
    • 앱을 30개나 만드셨다니 더 대단하신것 같은데요 ㅋㅋ 저도 아직 모르는게 너무 많아서 그정도의 답변을 드리긴 좀 민망하네요 ㅜㅜ 다만 자주 사용하는 API 들의 코드를 분석하는 작업을 많이 했던게 도움이 된 것 같습니다 알 수 없는 사용자 2018.9.11 12:00
    • 다 허접한 앱이라 모르는거 투성이라 pistolcaffe님의 지식에 매번 놀라서 저도 깊게 공부하고 싶어 졌습니다^^ 감사합니다 알 수 없는 사용자 2018.9.12 00:47

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)