마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

2중 VIewPager 뷰페이저에 대한 질문입니다

0 추천
한 액티비티 안에 2개의 뷰 페이저를 넣었습니다

하나는 화면 가운데에 적당한 크기의 사각형 레이아웃 안에 뷰페이저를 넣었고

하나는 화면 전체를 덮는 투명한 뷰페이저 입니다.

 

가운데를 A , 전체덮는것을 B라고 칭하겠습니다

 

이때 B에만 의해서 A,B 모두 스와이프가 되도록 하고 싶습니다.

동시에요! A만따로는 스와이프 되지 않고

화면의 어디든 스와이프를 하면 A와 B가 동일하게 포커싱이 잡혀서 움직이는것입니다.

 

B를 스와이프하면 A가 바뀌는것까진 구현을 했는데 동시에 포커싱이 잡혀서 움직이진 않네요...

 

도움주실분을 찾습니다...ㅠ
익명사용자 님이 2016년 11월 18일 질문

1개의 답변

0 추천
안녕하세요 밑에 댓글 달았던 사람입니다

 

오전에 다른분들이 효율적인 방법이나 라이브러리

바로 달아주실줄 알았는데. 없었나 보네요

 

음 저도 제가 말한건 이론상이라 해보진 않았지만

 

전체 뷰페이져에 대해 addOnPageChangeListener 달으셨죠?

오버라이드 된 3가지 메서드 중에서

onPageScrolled? 라고 있을건데 걔가 실시간 변화있을때마다 offset값을 줄거에요

로그 찍어보시면 알겠지만 (0<offset<1)을 뿌릴거에요 0.001 ~ 0.990120120 이런식으로

그럼 이 값을 가지고

안에 Viewpager.setScrollX( 변환해서 값 ); 이렇게 써주시면 될텐데

예를들어 뷰페이져 2개가 둘다 match일때 (1080px)이라고 가정

vp.setScrollX( 10.80*(offset*100)); 이런식으로 넣어주시면 되요

근데 형변환하고 이러다 보면 100% 일치하진 않겟지만 거의 근접하게 나올거에요

 

제 생각엔 될 것같은데 혹시나 안되면 라이브러리 찾아보시면 많을것 같아요.

은근 자주 보이는 화면이니..
익명사용자 님이 2016년 11월 18일 답변
감사합니다 한번 해볼게요 라이브러리가 이중뷰페이저는 찾기가힘들더라구요 ㅠㅠ
...