android 跳動的數字和金額 滑動的數字

2021-09-22 21:29:26 字數 2748 閱讀 3841

看到高傭聯盟的金額竟然可以跳動。感覺挺新鮮的。就自己實現一下。比較簡單。看看就ok了。高手勿噴。

先看看效果

看著挺好玩的。由於是gif。看著有點詭異。中間少了一些幀。看效果還是自己跑一下吧

單個textveiw是沒法實現了。這麼多數字在一排。那就是個linearlayout。 然後是數字部分。這麼多。怎麼辦。只好拆成乙個個的數字了。 那就出來了。先自定義乙個view實現單個跳動的數字view 。排成一排。就完成了。

先實現單個的view。 由於比較簡單。就直接看**吧。

package com.shoneworn.supermvp.common.widget;

import android.content.context;

import android.graphics.canvas;

import android.graphics.color;

import android.graphics.paint;

import android.graphics.rect;

import android.support.annotation.nullable;

import android.text.textutils;

import android.util.attributeset;

import android.view.view;

import com.shoneworn.supermvp.uitls.numberutils;

/** * created by chenxiangxiang on 2019/5/16.

* * @author shoneworn

* @只支援單個文字的跳動,只想支援數字。

*/public class singlescrollnumberview extends view

public singlescrollnumberview(context context, @nullable attributeset attrs)

public singlescrollnumberview(context context, @nullable attributeset attrs, int defstyleattr)

private void initpaint()

public singlescrollnumberview settext(string text)

public singlescrollnumberview settextcolor(int textcolor)

public singlescrollnumberview settextsize(int textsize)

public singlescrollnumberview settextpadding(int padding)

@override

protected void onmeasure(int widthmeasurespec, int heightmeasurespec)

if (heightmode == measurespec.at_most)

//設定寬高

setmeasureddimension(width, height);

}@override

protected void ondraw(canvas canvas)

}private void animateview()

scrolly += textoutheight / 4;

singlescrollnumberview.this.postinvalidate();

animateview();

}}, 8);

}public void start()

}

單個的view可以跑一下,看看實現沒。接下來串起來。

/**

* created by chenxiangxiang on 2019/5/17.

* * @author shoneworn

* @只想支援數字。

*/public class dancenumberview extends linearlayout

public dancenumberview(context context, @nullable attributeset attrs)

public dancenumberview(context context, @nullable attributeset attrs, int defstyleattr)

public void createview()

}public void start()

}private void initattributesdata(typedarray typedarray)

}

這就成了。so easy!

接下來就是使用了

自定義屬性別忘記了 scroll_number_attrs.xml

<?xml version="1.0" encoding="utf-8"?>

使用,使用,使用

在activity裡或者fragment裡使用

dnview.createview();

dnview.start();

結束了。最近越來越懶

android 跳動的數字和金額 滑動的數字

看到高傭聯盟的金額竟然可以跳動。感覺挺新鮮的。就自己實現一下。比較簡單。看看就ok了。高手勿噴。先看看效果 看著挺好玩的。由於是gif。看著有點詭異。中間少了一些幀。看效果還是自己跑一下吧 思路 單個textveiw是沒法實現了。這麼多數字在一排。那就是個linearlayout。然後是數字部分。這...

六,iOS中的金額格式化和金額大小寫轉換

1,金額格式化 1 需要注意當金額或者數字為負數是需要單獨處理 如下 string 金額格式化 整數部分為nsnumberformatter,小數部分為手動 nsstring stringfamat nsstring number if number doublevalue 0 else retur...

統計主要供應商供貨數量和金額的比例一

如何通過金蝶分析一段時間 主要 各 商供貨數量和金額佔 主要 商總數量和總金額的比例。select distinct select sum fauxqty from icstockbill v1 inner join icstockbillentry u1 on v1.finterid u1.fin...