Android使用view仿支付寶月賬單
前言
昨夜同門云集推杯又換盞,今朝茶涼酒寒豪言成笑談。半生累,盡徒然,碑文完美有誰(shuí)看,隱居山水之間誓與浮名散。
簡(jiǎn)介
今天給大家?guī)?lái)的是支付寶的月賬單view的實(shí)現(xiàn),看到標(biāo)題,你可能會(huì)覺(jué)得是自定義view的相關(guān)實(shí)現(xiàn),這里可能要讓你失望了,因?yàn)檫@里我們用的是github上的一個(gè)開(kāi)源項(xiàng)目。
1. 效果圖

2. MPAndroidChart
我們用的是MPAndroidChart打開(kāi)鏈接來(lái)實(shí)現(xiàn)的效果,它可以實(shí)現(xiàn)柱狀圖,餅狀圖等。
使用方法
1. 添加依賴
你可以選擇在build.gradle中添加依賴。
dependencies {
compile 'com.github.PhilJay:MPAndroidChart:v3.0.1'
}
2. 引入library
當(dāng)然也可以選擇引入library。

3. xml引用
activity_main.xml
<com.github.mikephil.charting.charts.PieChart
android:id="@+id/chart_view"
android:layout_width="300dp"
android:layout_height="300dp"
android:layout_centerInParent="true" />
4. MainActivity
public class MainActivity extends AppCompatActivity {
private static final float TEXT_SIZE = 18;
private PieChart mPieChart;
private List<MonthData> mMonthData;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mPieChart = (PieChart) findViewById(R.id.chart_view);
initData();
initPieData();
}
private void initData() {
mMonthData = new ArrayList<>();
MonthData playing = new MonthData();
playing.setLabel("娛樂(lè)");
playing.setValue(213);
MonthData pay = new MonthData();
pay.setLabel("消費(fèi)");
pay.setValue(239);
MonthData shopping = new MonthData();
shopping.setLabel("網(wǎng)購(gòu)");
shopping.setValue(682);
MonthData mobile = new MonthData();
mobile.setLabel("線下");
mobile.setValue(100);
mMonthData.add(playing);
mMonthData.add(pay);
mMonthData.add(shopping);
mMonthData.add(mobile);
}
private void initPieData() {
PieData mPieData = new PieData();
List<PieEntry> mEntry = new ArrayList<>();
String mLabel = "其他";
for (MonthData monthData : mMonthData) {
PieEntry entry = new PieEntry(monthData.getValue(), monthData.getLabel());
mEntry.add(entry);
}
PieDataSet mDataSet = new PieDataSet(mEntry, mLabel);
mDataSet.setColors(Color.rgb(60, 179, 113), Color.rgb(255, 69, 0),
Color.rgb(255, 185, 15), Color.rgb(30, 144, 255));
mPieData.setDataSet(mDataSet);
mPieData.setValueTextSize(TEXT_SIZE);
mPieData.setValueTextColor(Color.WHITE);
mPieChart.setDescription(new Description());
mPieChart.setData(mPieData);
}
}
這里,MonthData是我們自己定義的model,而initPieData()方法中的類都是用的MPAndroidChart中提供的,然后我們?cè)龠M(jìn)行簡(jiǎn)單的封裝,并用其提供的api顯示view。
5. MonthData
封裝的model
public class MonthData {
private String label;
private float value;
public String getLabel() {
return label;
}
public void setLabel(String label) {
this.label = label;
}
public float getValue() {
return value;
}
public void setValue(float value) {
this.value = value;
}
}
總結(jié)
對(duì)于本次view的實(shí)現(xiàn),雖然我們自己的東西很少,但至少可以讓我們有所提高,做出來(lái)總比做不出來(lái)的好,也希望你能和我一樣,每天提高一點(diǎn),不為別的,充實(shí)就好。
源碼下載
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Android中RecyclerView布局代替GridView實(shí)現(xiàn)類似支付寶的界面
- Android自定義控件實(shí)現(xiàn)支付寶記賬餅圖
- Android波紋擴(kuò)散效果之仿支付寶咻一咻功能實(shí)現(xiàn)波紋擴(kuò)散特效
- Android仿支付寶的頭部伸縮動(dòng)畫(huà)效果
- Android app第三方支付寶支付接入教程
- Android仿支付寶支付從底部彈窗效果
- Android支付寶和微信支付集成
- Android接入支付寶實(shí)現(xiàn)支付功能實(shí)例
- RecyclerView實(shí)現(xiàn)仿支付寶應(yīng)用管理
相關(guān)文章
Android緩存之DiskLruCache磁盤(pán)緩存的使用
這篇文章主要介紹了Android緩存之DiskLruCache磁盤(pán)緩存的使用,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-08-08
Flutter仿網(wǎng)易實(shí)現(xiàn)廣告卡片3D翻轉(zhuǎn)效果
在逛網(wǎng)易新聞時(shí),發(fā)現(xiàn)列表中的廣告在你滑動(dòng)的時(shí)候會(huì)有一個(gè)3D旋轉(zhuǎn)的交互引你的注意。本文將利用Flutter實(shí)現(xiàn)這一效果,感興趣的可以了解一下2022-04-04
Android Flutter實(shí)現(xiàn)仿閑魚(yú)動(dòng)畫(huà)效果
目前正在做的項(xiàng)目,為了增加用戶的體驗(yàn)度,準(zhǔn)備增加一些動(dòng)畫(huà)效果。本文將通過(guò)Android Flutter實(shí)現(xiàn)仿閑魚(yú)動(dòng)畫(huà)效果,感興趣的可以嘗試一下2023-02-02
Android實(shí)現(xiàn)簡(jiǎn)單旋轉(zhuǎn)動(dòng)畫(huà)
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)簡(jiǎn)單旋轉(zhuǎn)動(dòng)畫(huà),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-07-07
flutter實(shí)現(xiàn)一個(gè)列表下拉抽屜的示例代碼
本文主要介紹了flutter實(shí)現(xiàn)一個(gè)列表下拉抽屜的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02

