Android进阶之路

来源:互联网 发布:交大医学院网络 编辑:程序博客网 时间:2024/06/06 14:53

Android中的Xml属性一直d自带有跑马灯的效果,但是因为使用并不是很广泛,所以扩展性并不太好,所以在git上找到了MarqueeView,请根据此文提示直接用吧

使用原因:
简单,方便,扩展性强,作者在持续跟新。
解决了重影问题,内部封装动画。

Effect :

这里写图片描述

正式使用:

build :

    compile 'com.sunfusheng:marqueeview:1.3.3'

Xml 引用:

  <com.sunfusheng.marqueeview.MarqueeView        android:id="@+id/marqueeView"        android:layout_width="match_parent"        android:layout_height="30dp"        app:mvAnimDuration="1000"        app:mvDirection="bottom_to_top"        app:mvInterval="3000"        app:mvTextColor="@color/colorAccent"        app:mvTextSize="14sp"        app:mvSingleLine="true"/>

完整代码

MainActivity :

package com.example.yongliu.marqueeview;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import com.sunfusheng.marqueeview.MarqueeView;import java.util.ArrayList;import java.util.List;public class MainActivity extends AppCompatActivity {    private MarqueeView marqueeView;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        marqueeView = (MarqueeView) findViewById(R.id.marqueeView);        List<String> info = new ArrayList<>();        info.add("May be");        info.add("you");        info.add("are");        info.add("best man !");        // 在代码里设置自己的动画        marqueeView.startWithList(info, R.anim.anim_bottom_in, R.anim.anim_top_out);    }    //解决重影//    @Override//    public void onStart() {//        super.onStart();//        marqueeView.startFlipping();//    }//    @Override//    public void onStop() {//        super.onStop();//        marqueeView.stopFlipping();//    }}

MainActivity Xml :

<?xml version="1.0" encoding="utf-8"?><android.support.constraint.ConstraintLayout    xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:app="http://schemas.android.com/apk/res-auto"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    tools:context="com.example.yongliu.marqueeview.MainActivity">    <com.sunfusheng.marqueeview.MarqueeView        android:id="@+id/marqueeView"        android:layout_width="match_parent"        android:layout_height="30dp"        app:mvAnimDuration="1000"        app:mvDirection="bottom_to_top"        app:mvInterval="3000"        app:mvTextColor="@color/colorAccent"        app:mvTextSize="14sp"        app:mvSingleLine="true"/></android.support.constraint.ConstraintLayout>

如有出入,遇到问题,请直接跳转(原作者Git地址)

原创粉丝点击