Android仿淘寶首頁頭條View垂直滾動效果
之前本來是打算做TextView垂直向上滾動的,后來發(fā)現(xiàn)一位大神做得很好,https://github.com/sfsheng0322/MarqueeView 孫福生大神,然后自己要用到多個View向上滾動,也就是類似淘寶首頁頭條的那種滾動,所以就按照那個思路想了系啊,可以把View拿來滾動,這樣可以自己隨意的修改View里面的內(nèi)容,還比較簡單一些。所以這個整個思路就是把View就行循環(huán)滾動。
看一下循環(huán)滾動View的內(nèi)容咋寫的吧,非常簡單。
package com.dreamlive.upmarqueeview;
import android.content.Context;
import android.util.AttributeSet;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.ViewFlipper;
import java.util.List;
/**
* 仿淘寶首頁的 淘寶頭條滾動的自定義View
*
* Created by dreamlive on 2016/7/20.
*/
public class UPMarqueeView extends ViewFlipper {
private Context mContext;
private boolean isSetAnimDuration = false;
private int interval = 2000;
/**
* 動畫時間
*/
private int animDuration = 500;
public UPMarqueeView(Context context, AttributeSet attrs) {
super(context, attrs);
init(context, attrs, 0);
}
private void init(Context context, AttributeSet attrs, int defStyleAttr) {
this.mContext = context;
setFlipInterval(interval);
Animation animIn = AnimationUtils.loadAnimation(mContext, R.anim.anim_marquee_in);
if (isSetAnimDuration) animIn.setDuration(animDuration);
setInAnimation(animIn);
Animation animOut = AnimationUtils.loadAnimation(mContext, R.anim.anim_marquee_out);
if (isSetAnimDuration) animOut.setDuration(animDuration);
setOutAnimation(animOut);
}
/**
* 設(shè)置循環(huán)滾動的View數(shù)組
*
* @param views
*/
public void setViews(List<View> views) {
if (views == null || views.size() == 0) return;
removeAllViews();
for (int i = 0; i < views.size(); i++) {
addView(views.get(i));
}
startFlipping();
}
}MainActivity的內(nèi)容:
github地址:https://github.com/dreamlivemeng/UpMarqueeTextView-master 歡迎star,fork,提pr,issues。
效果圖:


以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Android中懸浮窗口的實(shí)現(xiàn)原理實(shí)例分析
這篇文章主要介紹了Android中懸浮窗口的實(shí)現(xiàn)原理,以實(shí)例形式較為詳細(xì)的分析了Android懸浮窗口的原理與具體實(shí)現(xiàn)技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-10-10
android 電話狀態(tài)監(jiān)聽(來電和去電)實(shí)現(xiàn)代碼
從事android開發(fā)的朋友們可能電話狀態(tài)監(jiān)聽不是很擅長,接下來將詳細(xì)介紹電話狀態(tài)監(jiān)聽功能的實(shí)現(xiàn)步驟,需要了解的朋友可以參考下2012-12-12
Android利用MPAndroidChart繪制曲線圖表的基礎(chǔ)教程
最近在項(xiàng)目中要用到曲線圖,于是在網(wǎng)上找了很多很多,有AChartengine,MPAndroidChart,helloChart等等,我還用過基于html5的jsChart來做過,不過最終還是選擇了MPAndroidChart來做本文介紹了Android利用MPAndroidChart繪制曲線圖表的基礎(chǔ)教程,需要的朋友可以參考下。2018-03-03
Android開發(fā)之Activity全透明漸變切換方法
下面小編就為大家分享一篇Android開發(fā)之Activity全透明漸變切換方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01
Android中檢測當(dāng)前是否為主線程最可靠的解決方法
這篇文章主要介紹了Android中檢測當(dāng)前是否為主線程最可靠的解決方法,本文先是給出了最可靠的方法,然后給出了幾個實(shí)驗(yàn)例子,需要的朋友可以參考下2015-01-01
Android下拉刷新控件SwipeRefreshLayout源碼解析
這篇文章主要為大家詳細(xì)解析Android下拉刷新控件SwipeRefreshLayout源碼,感興趣的小伙伴們可以參考一下2016-07-07
kotlin項(xiàng)目加入Glide圖片加載庫并使用GlideApp的方法
這篇文章主要給大家介紹了關(guān)于kotlin項(xiàng)目加入Glide圖片加載庫并使用GlideApp的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧2019-01-01
Android 實(shí)現(xiàn)徹底退出自己APP 并殺掉所有相關(guān)的進(jìn)程
這篇文章主要介紹了Android 實(shí)現(xiàn)徹底退出自己APP 并殺掉所有相關(guān)的進(jìn)程,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03
Android開發(fā)中使用Volley庫發(fā)送HTTP請求的實(shí)例教程
這篇文章主要介紹了Android開發(fā)中使用Volley庫發(fā)送HTTP請求的實(shí)例教程,包括創(chuàng)建Volley單例的基本知識與取消Request請求的技巧等,需要的朋友可以參考下2016-05-05

