2013-08-20 68 views
5

Tôi cần thêm hiệu ứng mờ dần trên ImageView. Trong trường hợp của tôi, tôi có một số RelativeLayout, nền tương đối màu vàng và ở giữa nền đó có ImageView. Bây giờ tôi cần phải áp dụng một ảnh hưởng mờ dần trên các cạnh của ImageView. Điều này có thể không? (Android api 11+)Làm mờ đường viền hình ảnh trong một lần xem hình ảnh

tôi đã cố gắng:

android:requiresFadingEdge="horizontal" 
android:fadingEdge="horizontal" 
android:fadingEdge="vertical" 
android:fadingEdgeLength="40px" 

nhưng không hoạt động ..

enter image description here

Đây là một ví dụ về những gì tôi muốn. Giống như bạn có thể thấy đầu trang và bên trái đang mờ dần, cạnh phải và cạnh dưới, thay vào đó, không bị mờ dần.

Cảm ơn rất nhiều!

Trả lời

3

phương pháp ghi đè trong ImageView như được viết dưới đây:

private float FadeStrength = 1.0f; 
private int FadeLength = 40px; 

@Override 
protected float getTopFadingEdgeStrength() { 
    return FadeStrength; 
} 

@Override 
protected float getBottomFadingEdgeStrength() { 
    return FadeStrength; 
} 

@Override 
protected float getLeftFadingEdgeStrength() { 
    return FadeStrength; 
} 

@Override 
protected float getRightFadingEdgeStrength() { 
    return FadeStrength; 
} 

Và trên khởi của xem thêm dòng:

setFadingEdgeLength(FadeLength); 
setVerticalFadingEdgeEnabled(true); 
setHorizontalFadingEdgeEnabled(true); 
0

Hãy thử làm việc này xung quanh: Không cần phải mở rộng ImageView

imageView.scrollTo(1,0); 
imageView.setHorizontalFadingEdgeEnabled(true); 
imageView.setFadingEdgeLength(40); 
Các vấn đề liên quan