2013-05-31 56 views
7

Tôi muốn triển khai trải nghiệm hoạt ảnh như google + listview.Khi người dùng trượt danh sách xem, mỗi mục được tải đầu tiên trong listview sẽ bắt đầu hoạt ảnh. Tôi cố gắng thêm hoạt ảnh trong phương thức getview để tạo hoạt ảnh mục, nhưng tôi muốn xác nhận cho dù cách này là một phương pháp tốt và tôi cần phải mở rộng lớp listview để kết thúc này? Vì vậy, xin vui lòng cho tôi một số lời khuyên hoặc một số ví dụ mà như google + listview.Thanks rất nhiều :)Làm thế nào để triển khai google + listview hoạt hình

Trả lời

15

Bạn không cần phải mở rộng lớp ListView.

Đây là thư viện Android đã triển khai hoạt ảnh ListView giống như Google.

GenericBaseAdapter.java

GPlusListAdapter.java

MainActivity.java

Cách nó hoạt động, trong phương pháp của bộ chuyển đổi getView, nó sinh động xem nếu nó mới được tải.
(Vì vậy, nó mở rộng Adaptor, không ListView, để thực hiện một hình ảnh động.)

Bạn cũng có thể tải về gói ứng dụng ứng dụng mẫu trong các liên kết trong sugared-list-animations-sample

+0

mát mẻ, cảm ơn rất nhiều :) – CrystalJake

+0

rất đẹp :) Cảm ơn rất nhiều – nguoitotkhomaisao

2

Google Plus ListViews phong cách là tất cả những cơn thịnh nộ những ngày này trên Android vì hoạt ảnh mượt mà nó hiển thị khi trình bày dữ liệu. Khi người dùng cuộn xuống, mặt hàng mới động lên xem, và khá thẳng thắn nó trông awesome up_from_bottom.xml

<?xml version="1.0" encoding="utf-8"?> 
    <set xmlns:android="http://schemas.android.com/apk/res/android" 
     android:shareInterpolator="@android:anim/decelerate_interpolator"> 
    <translate 
    android:fromXDelta="0%" android:toXDelta="0%" 
    android:fromYDelta="100%" android:toYDelta="0%" 
    android:duration="400" /> 
    </set> 

xuống từ trên down_from_top.xml

<?xml version="1.0" encoding="utf-8"?> 
    <set xmlns:android="http://schemas.android.com/apk/res/android" 
     android:shareInterpolator="@android:anim/decelerate_interpolator"> 
    <translate 
    android:fromXDelta="0%" android:toXDelta="0%" 
    android:fromYDelta="-100%" android:toYDelta="0%" 
    android:duration="400" /> 
    </set> 

Trong của bạn danh sách bộ chuyển đổi lớp

 private int lastPosition = -1; 

    @Override 
    public View getView(int position, View convertView, ViewGroup parent) { 
//Load your view, populate it, etc... 
     View view = ...; 

    Animation animation = AnimationUtils.loadAnimation(getContext(), (position > lastPosition) ? R.anim.up_from_bottom : R.anim.down_from_top); 
    view.startAnimation(animation); 
    lastPosition = position; 

    return view; 
    } 

được sao chép từ http://kylewbanks.com/blog/Implementing-Google-Plus-Style-ListView-Animations-on-Android

+0

Điều này sẽ được áp dụng mỗi khi bạn cuộn, không chỉ các mục mới trong chế độ xem danh sách như Google+ – SpyZip

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