2012-10-31 35 views
8

Tôi đã cố tạo hiệu ứng văn bản khi người dùng bắt đầu chỉnh sửa nó. Tôi đã thử mã sau,Android: Các sự cố trong hoạt ảnh edittext?

EditText txtPassword = (EditText) findViewById(R.id.editText1); 
Animation anim = AnimationUtils.loadAnimation(getApplicationContext(),R.anim.anim); 
anim.setInterpolator((new AccelerateDecelerateInterpolator())); 
anim.setFillAfter(true); 
txtPassword.startAnimation(anim); 

anim.xml 
```````` 
<?xml version="1.0" encoding="utf-8"?> 
<set xmlns:android="http://schemas.android.com/apk/res/android"> 
<translate android:fromYDelta="0" android:toYDelta="-50%p" android:duration="100"/> 
</set> 

Hoạt ảnh hoạt động tốt. nhưng edittext đã ngừng sử dụng sau khi hoạt ảnh. Nếu người dùng chạm vào vị trí trước đó của văn bản của màn hình, bàn phím sẽ xuất hiện. nhưng thực tế edittext ở vị trí mới sẽ phản hồi. Tôi phải làm gì?

enter image description here

enter image description here Tôi hy vọng rằng ai đó có thể chỉnh sửa câu hỏi của tôi ở dạng tiếng Anh chính xác.

Trả lời

0

(GỢI Ý ÍCH: Có một thư viện Android để sử dụng Honeycomb (Android 3.0) hoạt hình API trên tất cả các phiên bản của nền tảng trở lại 1,0 !. Nó được gọi là NineOldAndroid.)

(ÍCH GỢI Ý (Android Developers , View): Bắt đầu với Android 3.0, cách ưa thích của chế độ xem hoạt ảnh là sử dụng API gói android.animation. Các lớp dựa trên Animator này thay đổi thuộc tính thực tế của đối tượng Chế độ xem, chẳng hạn như alpha và translationX. của các lớp dựa trên hoạt ảnh trước 3.0, thay vào đó chỉ làm sinh động cách chế độ xem được hiển thị trên màn hình. Đặc biệt, lớp ViewPropertyAnimator làm cho hoạt ảnh này trở nên đặc biệt dễ dàng và hiệu quả.)

(LƯU Ý RẰNG: DƯỚI ĐÂY LÀ GIẢI PHÁP CHO PRE-Honeycomb.)

Animations với android là một chút khó khăn để hiểu, trái ngược với iOS. Bạn cần biết điều đó;

  • chỉ ma của phân lớp Chế độ xem Android mới hoạt ảnh.
  • và ngôi mộ vẫn ở tọa độ tổ tiên

Vì vậy, giải pháp có thể là;

  • Khối liên lạc các sự kiện để xem

    animatingView.setEnabled(FALSE);

  • xem Animate

  • Remove animatingView

    animatingView.setVisibility(GONE); (animatingView.getParent()).removeView(animatingView);

  • Add bản sao chính xác của chế độ xem đến tọa độ mới.

+0

Cảm ơn bạn đã trả lời nhưng còn về gừng (android 2.3) thì sao? cần soln. –

+0

phần dưới đây là giải pháp tôi đã cung cấp. Phần nào bạn không hiểu? –

+0

bạn cho biết công trình của nó android 3.0 nhưng cần thiết cho bên dưới android 3.0 phiên bản –

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