如何滚动列表视图像Marquee一样连续



我想像Marquee效果一样连续滚动列表视图,为此我需要为列表视图添加什么。

请参阅这篇文章,或者您可以使用一些适配器EndlessAdapter或这个适配器。

MarqueLayout.java

import android.content.Context;
import android.view.animation.Animation;
import android.view.animation.TranslateAnimation;
import android.widget.FrameLayout;
public class MarqueeLayout extends FrameLayout {
    private Animation animation;
    public MarqueeLayout(Context context) {
        super(context);
        animation = new TranslateAnimation(
            Animation.RELATIVE_TO_SELF, +1f,
            Animation.RELATIVE_TO_SELF, -1f,
            Animation.RELATIVE_TO_SELF, 0f,
            Animation.RELATIVE_TO_SELF, 0f
        );
        animation.setRepeatCount(Animation.INFINITE);
        animation.setRepeatMode(Animation.RESTART);
    }
    public void setDuration(int durationMillis) {
        animation.setDuration(durationMillis);
    }   
    public void startAnimation() {
        startAnimation(animation);
    }
}

MarqueLayoutActivity.java

import android.app.Activity;
public class MarqueeLayoutActivity extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        /*List view code here*/
        MarqueeLayout marqueeLayout = new MarqueeLayout(this);
        marqueeLayout.setDuration(10000);
        marqueeLayout.addView(listView);
        marqueeLayout.startAnimation();
        setContentView(marqueeLayout);
    }
}

希望能有所帮助。

最新更新