2014-11-10 12 views

Trả lời

7

Bạn có thể đạt được hiệu quả mong muốn bằng cách mở rộng scrollview và trọng một trong hai phương pháp:

float getTopFadingEdgeStrength() 
float getBottomFadingEdgeStrength() 

Họ sẽ alow bạn thay đổi kích thước của các cạnh mờ dần - chỉ cần thiết lập giá trị dưới lên 0 và bạn đã sẵn sàng để đi :)

Mã ví dụ với đáy fading tắt:

/** 
* Created by scana on 14.12.14. 
*/ 
public class TopFadeEdgeScrollView extends ScrollView { 

    public TopFadeEdgeScrollView(Context context) { 
     super(context); 
    } 

    public TopFadeEdgeScrollView(Context context, AttributeSet attrs) { 
     super(context, attrs); 
    } 

    public TopFadeEdgeScrollView(Context context, AttributeSet attrs, int defStyleAttr) { 
     super(context, attrs, defStyleAttr); 
    } 

    @Override 
    protected float getBottomFadingEdgeStrength() { 
     return 0.0f; 
    } 
} 
+0

tôi xin lỗi có lẽ câu hỏi không rõ ràng, tôi muốn để có thể vô hiệu hóa nó và kích hoạt nó, không vô hiệu hóa cạnh phai mờ tất cả thời gian, nói cách khác, tôi muốn vô hiệu hóa mờ dần khi người dùng ở một điểm nhất định từ chế độ xem cuộn và bật nó khi người đó ở trên nó – Firas

+0

Điều này thực sự đơn giản, chỉ cần thêm biến mà bạn sẽ sửa đổi bởi một số loại setter. Bạn có thể nghe giá trị Y trong một số OnScrollListener và sửa đổi giá trị trả về bằng phương thức getBottomFadingEdgeStrength(). Giá trị 0 có nghĩa là không có cạnh mờ dần nào cả, 1 có nghĩa là nó hoàn toàn có thể nhìn thấy được. Tôi có thể cung cấp một ví dụ nếu bạn muốn :) – scana

+0

cảm ơn ngay bây giờ – Firas

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