2010-09-17 40 views
6

Tôi có một ScrollView có hai hình ảnh ẩn, một ở đầu và một ở phía dưới. Ở giữa có một loạt nội dung hiển thị.Android: Phát hiện khi ScrollView đã cuộn xong và quay trở lại?

Những gì tôi cần làm là làm cho những hình ảnh này được ẩn theo mặc định nhưng khi bạn cuộn hết cỡ hoặc xuống hết cỡ, bạn có thể nhìn thấy chúng khi bạn đang di chuyển. Nhưng sau đó ngay khi bạn ngừng di chuyển nó sẽ bị trả về vùng hiển thị để hình ảnh ẩn không hiển thị.

Về cơ bản, tôi đang cố bắt chước tính năng cuộn thư bị trả lại của iPhone UIScrollView.

Tôi có ScrollView tất cả thiết lập và tôi thực hiện cuộn ở đầu để ẩn hình ảnh ẩn hàng đầu. Bây giờ tất cả những gì tôi cần làm là phát hiện khi cuộn đã kết thúc, tìm ra vị trí Y và kiểm tra xem hình ảnh ẩn có được hiển thị hay không. Nếu có, tôi sẽ chỉ cuộn theo chế độ xem lại để ẩn hình ảnh ẩn.

Tôi hy vọng tất cả những điều đó có ý nghĩa.

Vì vậy, dù sao, tôi biết cách cuộn theo chương trình một ScrollView. Bây giờ những gì tôi cần là một số loại gọi lại để cho tôi biết khi một ScrollView kết thúc di chuyển và cũng là một cách để có được vị trí hiện tại 'Y' của ScrollView. Có bất kỳ phương pháp nào tôi có thể sử dụng không?

Tôi đã xem qua tài liệu ScrollView nhưng không có gì nhảy ra ngoài với tôi. Tôi vẫn chưa quen thuộc với các sơ đồ đặt tên của Android nên có thể tôi đã bỏ sót một điều gì đó hiển nhiên ở đâu đó.

Anyways, mọi trợ giúp sẽ được đánh giá tại đây. Chúc mừng.

Trả lời

4

Bạn có thể sử dụng một số OnTouchListener để phát hiện khi người dùng nhấn/thả danh sách.

Bạn cũng có thể sử dụng phương pháp onScrollStateChanged của lớp OnScrollListener (rất có thể kết hợp với một người nghe cảm ứng) để phát hiện những thay đổi trong SCROLL_STATE - khi danh sách đã ngừng di chuyển nhà nước sẽ thay đổi từ trạng thái đó là khôngSCROLL_STATE_IDLE đến SCROLL_STATE_IDLE.

Hoặc nếu bạn đang sử dụng 2.3 hoặc cao hơn, bạn có thể sử dụng OverScroller để có hiệu ứng mong muốn (xem Modifying Android OverScroll để biết cách thay đổi hiệu ứng cuộn qua cho iPhone giống như một).

+13

không có OnScrollListener cho ScrollView – Frank

Các vấn đề liên quan