실제로 ViewFlipper를 사용하여 3 가지 다른 사용자 정의보기를 표시하는 응용 프로그램을 만들고 있습니다. 이러한 뷰는 각각 하나의 ScrollView에 있습니다 (단일 ScrollView에 ViewFlipper를 배치하면 onFling 제스처가 실제로 효율적이지 않습니다). 그리고 저는 실제로 세 개의 스크롤바 위치를 동기화하려고합니다. 이 시점에서 하나의 ScrollView를 사용하면 더 쉬울 것이지만이 솔루션을 사용하지 않으려 고합니다.안드로이드 - 표시되지 않을 때 ViewFlipper 자식 크기를 어떻게 결정합니까?
각 ScrollView에 ScrollListener를 사용하여 ScrollView 스크롤 위치를이 스레드와 같이 설정합니다 (Synchronise ScrollView scroll positions - android).
문제는이 방법이 처음에는 작동하지만 문제가되는 것입니다. 내가 ScrollView에있을 때, 다른 두 가지는 이미 그려지지 않았고 높이는 null입니다. 따라서 스크롤 위치를 설정하는 것이 효과적이지 않습니다.
/*Instanciate ScollViews*/
scrollViewLeft = (ScrollableScrollView) findViewById(R.id.scroll_prev);
scrollViewCenter =(ScrollableScrollView) findViewById(R.id.scroll_current);
scrollViewRight = (ScrollableScrollView) findViewById(R.id.scroll_next);
/*Fill views with events*/
setDayEvents(calIns.getPrevCal(),leftDayView);
setDayEvents(calIns.getActualCal(),centerDayView);
setDayEvents(calIns.getNextCal(),rightDayView);
scrollViewLeft.setScrollViewListener(this);
scrollViewCenter.setScrollViewListener(this);
scrollViewRight.setScrollViewListener(this);
그래서 마지막으로 내 질문은 다른 두 가지보기의 스크롤 위치를 찾기 위해 다른 방법을 사용해야합니까? 또는 ViewFlipper에서 뷰를 그려야합니까?
고마워요 :)
클레멘트.
솔루션을 찾았으며 내 답변이 도움이 되었기 때문에 기쁩니다. 행운을 빕니다! – Egor