Android使用MPAndroidChat

参考文档:
https://blog.csdn.net/u013184970/article/details/52095170
https://blog.csdn.net/cen_yuan/article/details/52204281
注意:
在要使用的module的build.gradle添加:
dependencies {
compile ‘com.github.PhilJay:MPAndroidChart:v3.0.0-beta1’
}
与compile 'com.github.PhilJay:MPAndroidChart:v2.2.5’有些不同!
案例使用的是2.2.5

一、说明

bulid.gradle(project)中添加
allprojects {
repositories {
jcenter()
maven { url “https://jitpack.io” }
}
}
bulid.gradle(app)中添加
dependencies {
compile ‘com.github.PhilJay:MPAndroidChart:v2.2.5’
}

二、XML代码

<?xml version="1.0" encoding="utf-8"?>
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"tools:context="com.zjs.mpandroidchart.MainActivity"><com.github.mikephil.charting.charts.PieChartandroid:id="@+id/consume_pie_chart"android:layout_width="match_parent"android:layout_height="400dp"android:layout_gravity="center_horizontal"android:layout_marginLeft="16dp"android:layout_marginRight="16dp"></com.github.mikephil.charting.charts.PieChart><TextViewandroid:id="@+id/botton_text"android:textSize="25dp"android:textColor="#f00"android:text=""android:gravity="center_horizontal"android:layout_width="match_parent"android:layout_height="wrap_content"/></LinearLayout>

三、activity代码

package com.zjs.mpandroidchart;import android.graphics.Color;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.DisplayMetrics;
import android.widget.TextView;import com.github.mikephil.charting.charts.PieChart;
import com.github.mikephil.charting.components.Legend;
import com.github.mikephil.charting.data.Entry;
import com.github.mikephil.charting.data.PieData;
import com.github.mikephil.charting.data.PieDataSet;
import com.github.mikephil.charting.formatter.ValueFormatter;
import com.github.mikephil.charting.utils.ViewPortHandler;import java.util.ArrayList;public class MainActivity extends AppCompatActivity {public PieChart mChart;private TextView mText;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);mChart = (PieChart) findViewById(R.id.consume_pie_chart);
//        初始化饼状图数据类PieData mpieData = getPieData();mText = (TextView) findViewById(R.id.botton_text);mText.setText("全年消费情况");showMchat(mChart, mpieData);}private void showMchat(PieChart pieChart, PieData pieData) {
//        设置饼状图中心透明pieChart.setHoleColor(Color.TRANSPARENT);
//        //设置描述
//        pieChart.setDescription("全年消费情况");
//        //设置描述字体大小
//        pieChart.setDescriptionTextSize(50f);
//        //设置描述颜色
//        pieChart.setDescriptionColor(Color.RED);
//        //设置描述字体
//        pieChart.setDescriptionTypeface(Typeface.DEFAULT);
//       pieChart.setDescriptionPosition(666,1300);//          设置饼状图的半径pieChart.setHoleRadius(60f);
//        饼状图添加文字pieChart.setDrawHoleEnabled(true);pieChart.setCenterText("家庭支出");pieChart.setCenterTextSize(26f);pieChart.setCenterTextColor(Color.RED);//        初始选择角度pieChart.setRotationAngle(90);
//        设置手动可以旋转pieChart.setRotationEnabled(true);
//        设置百分比显示pieChart.setUsePercentValues(true);pieChart.setData(pieData);
//        设置比例图Legend mlegend = pieChart.getLegend();mlegend.setPosition(Legend.LegendPosition.RIGHT_OF_CHART);mlegend.setTextSize(15);mlegend.setTextColor(Color.RED);mlegend.setXEntrySpace(7f);mlegend.setYEntrySpace(5f);//        初始动画pieChart.animateXY(1000, 1000);}private PieData getPieData() {
//      衣食住行以及其他ArrayList<String> xValues = new ArrayList<>();xValues.add("衣");xValues.add("食");xValues.add("住");xValues.add("行");xValues.add("其他");ArrayList<Entry> yValues = new ArrayList<>();float y1 = 10;float y2 = 20;float y3 = 25;float y4 = 40;float y5 = 5;yValues.add(new Entry(y1, 0));yValues.add(new Entry(y2, 1));yValues.add(new Entry(y3, 2));yValues.add(new Entry(y4, 3));yValues.add(new Entry(y5, 4));
//        PieDataSet pieDataSet = new PieDataSet(yValues, "2018年家庭支出");PieDataSet pieDataSet = new PieDataSet(yValues, "");pieDataSet.setSliceSpace(1f);ArrayList<Integer> colour = new ArrayList<>();
//      饼状图颜色colour.add(Color.RED);colour.add(Color.BLUE);colour.add(Color.YELLOW);colour.add(Color.GRAY);colour.add(Color.GREEN);pieDataSet.setColors(colour);pieDataSet.setValueTextColor(Color.BLACK);pieDataSet.setValueTextSize(25);pieDataSet.setValueFormatter(new ValueFormatter() {@Overridepublic String getFormattedValue(float value, Entry entry, int dataSetIndex, ViewPortHandler viewPortHandler) {return "" + (int) value + "%";}});DisplayMetrics metrics = getResources().getDisplayMetrics();float px = 5 * (metrics.densityDpi / 180f);pieDataSet.setSelectionShift(px);PieData pieData = new PieData(xValues, pieDataSet);return pieData;}
}

4、效果图

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/325885.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微服务集成——《微服务设计》读书笔记

一.理想的集成应该是什么样的&#xff1f; 1.避免破坏性修改 如果在一个微服务的响应中添加一个字段&#xff0c;服务的消费方不应该受到影响。 2.保证API的技术无关性 微服务之间的通信应该是与技术无关的。 3.使服务的消费方易于使用 如果消费方使用该服务比登天还难&…

什么是加密算法

转载自 什么是加密算法 Java的加密知识也是Java常见的领域之一&#xff0c;加密技术的底层确实很复杂&#xff0c;运用了大量的数学知识&#xff0c;要弄明白非常复杂。但是Java语言中运用密码加密工具却是非常简单。我们在Java里面运用这些加密技术&#xff0c;只需要把原理…

Android传感器的使用

Android 中主要的传感器有以下几种 TYPE_ACCELEROMETER 加速度传感器又叫 G-sensor&#xff0c;该数值包含地心引力的影响&#xff0c;单位是 m/s 测量应用于设备 x 、y、z 轴上的加速度。 将手机平放在桌面上&#xff0c;x 轴默认为0&#xff0c;y 轴默认0&#xff0c;z 轴默…

理解C# 4 dynamic(2) – ExpandoObject的使用

ExpandoObject的使用非常简单&#xff0c;很容易入手。上一篇里面已经有详细的介绍了&#xff0c;可以看这里(理解C# 4 dynamic(1) - var, object, dynamic的区别以及dynamic的使用) 下面对ExpandoObject的使用场合和一些认为需要注意的地方&#xff0c;谈一下自己的看法: 一…

谈谈服务限流算法的几种实现

转载自 谈谈服务限流算法的几种实现 保障服务稳定的三大利器&#xff1a;熔断降级、服务限流和故障模拟。今天和大家谈谈限流算法的几种实现方式&#xff0c;本文所说的限流并非是Nginx层面的限流&#xff0c;而是业务代码中的逻辑限流。 为什么需要限流 按照服务的调用方&…

Android如何实现NoActionBar以及Theme.NoTitleBar.Fullscreen效果

效果一 NoActionBar 无论Activity继承自Activity还是AppCompatActivity 只需要在styles中的修改Theme <style name"AppTheme" parent"Theme.AppCompat.Light.NoActionBar"><!-- Customize your theme here. --><item name"colorPrima…

自己动手写一个能操作redis的客户端

转载自 自己动手写一个能操作redis的客户端 引言 redis大家在项目中经常会使用到。官网也提供了多语言的客户端供大家操作redis,如下图所示 但是&#xff0c;大家有思考过&#xff0c;这些语言操作redis背后的原理么&#xff1f;其实&#xff0c;某些大神会说 只要按照redis…

离线安装 VS2017 的正确姿势

国内的网络环境&#xff0c;真的是有很大的不同&#xff0c;有的人装 VS 的时候&#xff0c;号称满速&#xff0c;有的人&#xff08;其实就是我&#xff09;要等它下载很久&#xff0c;还告诉我有个组件没有安装成功。很久很久以前&#xff0c;VS 是提供 ISO 版的离线安装包的…

Android中ImageView的旋转与缩放

说明在代码中已经注释 XML代码 <?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_parent"android:layout_height"wra…

ASP.NET Core MVC四种枚举绑定方式

前言 本节我们来讲讲在ASP.NET Core MVC又为我们提供了哪些方便&#xff0c;之前我们探讨过在ASP.NET MVC中下拉框绑定方式&#xff0c;这节我们来再来重点看看枚举绑定的方式&#xff0c;充分实现你所能想到的场景&#xff0c;满满的干货&#xff0c;你值得拥有。 探讨枚举绑…

关于分布式事务、两阶段提交协议、三阶提交协议

转载自 关于分布式事务、两阶段提交协议、三阶提交协议 随着大型网站的各种高并发访问、海量数据处理等场景越来越多&#xff0c;如何实现网站的高可用、易伸缩、可扩展、安全等目标就显得越来越重要。 为了解决这样一系列问题&#xff0c;大型网站的架构也在不断发展。提高…

React对标签属性进行限制(props)

<!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>对props进行限制</title> </head> <body><!-- 准备好一个“容器” --><div id"test1"></div><div …

服务的协作:服务间的消息传递——《微服务设计》读书笔记

在微服务集成——《微服务设计》读书笔记文章中&#xff0c;我们说过服务间的消息传递有几种方式&#xff0c;一种是请求/响应技术&#xff0c;另一种是基于事件的机制。 RPC&#xff08;远程过程调用&#xff09; RPC是Remote Procedure Call的简称。 这是请求/响应技术的一种…

jdbc事务和事务的隔离级别

转载自 jdbc事务和事务的隔离级别 在jdbc的使用中以最简单的jdbc的使用为例&#xff0c;说明了jdbc的具体用法。然而在通常项目中&#xff0c;需要考虑更多内容&#xff0c;例如事务。 事务&#xff0c;在单个数据处理单元中&#xff0c;存在若干个数据处理&#xff0c;要么整…

Android自定义View画钟表

第一种使用背景表盘 主要代码&#xff1a; package com.zjs.zidingyiview; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.os.Handler; import android.os.Message; impo…

理解C# 4 dynamic(3) – DynamicObject的使用

上篇文章"理解C# 4 dynamic(2) – ExpandoObject的使用" 了解了xpandoObject的基本使用。但ExpandoObject的问题就是它是一个万金油&#xff0c;什么都可以做&#xff0c;但是又都不专注。使用DynamicObject正好可以解决这个问题。这篇文章介绍DynamicJson是如何继承…

jsx中的注释的写法

{}表示里面要写js语句 js语句里面的注释为/**/

微软正在用实际行动告诉你: 拥抱开源,微软是认真的

2017年4月19日至20日&#xff0c;由工业和信息化部指导、中国信息通信研究院主办、云计算开源产业联盟承办的"全球云计算开源峰会"在国家会议中心举行。微软.NET CORE开发平台荣获由峰会云计算开源产业联盟(OSCAR) 评选出的“尖峰开源技术”奖&#xff0c;标志着国内…

React不提交表单并且获取表单中的数据

<!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>1_非受控组件</title> </head> <body><!-- 准备好一个“容器” --><div id"test"></div><!-- 引入…