Tôi đang sử dụng objectAnimator để tạo hoạt ảnh cho nút từ dưới lên trên trong Android. Bây giờ tôi đang sử dụng mã bên dướiCách cung cấp giá trị phần trăm trong ObjectAnimator trong Android
ObjectAnimator transAnimation = ObjectAnimator.ofFloat(button,"translationY",0,440);
transAnimation.setDuration(440);
transAnimation.start();
Tôi cũng đã thử với mã mẫu bên dưới. Nhưng vẫn còn những vấn đề tồn tại
ObjectAnimator transAnimation = ObjectAnimator.ofFloat(loginLayout, "translationY",0f,0.8f);
transAnimation.setDuration(480);
transAnimation.start();
Nó hoạt động tốt trong các thiết bị màn hình lớn. Nhưng khi nói đến các thiết bị màn hình nhỏ, nó sẽ tắt màn hình. Tôi muốn giữ nó ở trên cùng của màn hình bất kể kích thước màn hình khác nhau. Tôi nghĩ rằng tôi phải đưa ra các giá trị theo tỷ lệ phần trăm (nói 0% đến 100% hoặc 0 đến 100% p). Vì vậy, câu hỏi của tôi là làm thế nào để cung cấp cho các giá trị trong tỷ lệ phần trăm trong objectAnimator trong Android. Tôi cũng nhận thấy một điều rằng objectAnimator này chỉ được giới thiệu trong HoneyComb. Vì vậy, có bất kỳ thư viện tương thích ngược để chạy nó trong các phiên bản thấp. Bất cứ ai có thể hướng dẫn tôi để tìm một giải pháp cho việc này.
Tôi cũng đã thử mở rộng Xem và viết getter và setter cho thuộc tính trong offset()
. Tuy nhiên nó không di chuyển hoàn toàn lên đầu màn hình. Đây là mã tôi đã sử dụng.
@SuppressLint("NewApi") public float getXFraction()
{
int width = context.getWindowManager().getDefaultDisplay().getHeight();
return (width == 0) ? 0 : (getY());
}
@SuppressLint("NewApi") public void setXFraction(float xFraction) {
int width = context.getWindowManager().getDefaultDisplay().getWidth();
setY((width > 0) ? (width) : 0);
}
Cảm ơn inAdvance
Đối với những người đang tìm kiếm câu trả lời, [ở đây] (http://stackoverflow.com/a/11015834/1083957) là giải pháp thay thế. – azizbekian