Android PieChart(饼形图),你的技术真的到天花板了吗
Android PieChart(饼形图),你的技术真的到天花板了吗
现在几乎每个it公司都在开发移动产品,我最早知道Android还是在1年成都某学院上大学的时候,从新闻上知道有这么一家公司,创始人安迪·鲁宾很有名,但安卓到底是做什么的,我并没有关注。
到2014年毕业的时候,Android已经发展到了4.4 版本,百度了一下Android,知道了(应用)开发采用的是Java语言。我当时学过 C,C,对java有些了解,从成都辗转来到北京,到的工作正是开发一款Android应用(生活服务类)。这时我有了一个HTC的安卓最新版手 机。
现在做Android移动开发已经有六年时间,从一个什么都不懂的小程序员到现在的项目经理,其中甘苦自知,对Android开发和对Android程序员的职业发展有一些自己的感悟,在这里愿与大家分享和讨论。
// pie_chart.invalidate();
// pie_chart.getLegend().setEnabled(false);//设置比例图
// pie_chart.animateX(1400);
4.2 设置数据的大小和颜
private void setPieData1(MyPieChart chart,Map<String, Object> formatDatas)
{
ArrayList entries = new ArrayList();
for (Map.Entry<String,Object> entry:())
{
String s = entry.getValue().toString();
double x = Integer.valueOf(s).intValue();
i = i x;
}
for (Map.Entry<String,Object> entry:())
{
String s = entry.getValue().toString();
double y = Integer.valueOf(s).intValue();
double f = y/i;
BigDecimal b = new BigDecimal(f);
double f1 = b.setScale(4, BigDecimal.ROUD_HALF_UP).doubleValue();
double result = Math.round(f1 * 100) / 100d; // 1245.68
entries.add(new PieEntry((float) f1,entry.getKey().toString() “:” entry.getValue().toString() “人” “,” “占比” “:” result “%”));
}
//^^^
PieDataSet dataSet = new PieDataSet(entries, “Election Results”);
dataSet.setSliceSpace(1f); //不同块之间的间距
dataSet.setSelectionShift(7f);//选中时候突出的间距
//dataSet.setValueLineWidth(10f);
ArrayList colors = new ArrayList();
colors.add(getResources().getColor());
colors.add(getResources().getColor(bai));
colors.add(getResources().getColor(black_blue));
colors.add(getResources().getColor(colorAccent));
colors.add(getResources().getColor(colorPrimary));
colors.add(getResources().getColor(orange));
dataSet.setColors(colors);
//dataSet.setValueLinePart1OffsetPercentage(100f);//Part:部分,Percentage:百分比
//dataSet.setValueLineVariableLength(true);//Variable:变量,Length:长度
dataSet.setValueLinePart1Length(0.6f);
dataSet.setValueLinePart2Length(0.2f);
dataSet.setHighlightEnabled(true);
//dataSet.setYValuePosition(PieDataSet.ValuePosition.OUTSIDE_SLICE);
dataSet.setXValuePosition(PieDataSet.ValuePosition.OUTSIDE_SLICE);//标签显示在外面,关闭显示在饼图里面
//dataSet.setValueLineColor(0xff000000); //设置指示线条颜,必须设置成这样,才能和饼图区域颜一致
dataSet.setValueLineColor(Color.BLACK);
PieData data = new PieData(dataSet);
data.setValueFormatter(new PercentFormatter());//Formatter:格式化程序,Percent,百分比
data.setValueTextSize(12f);
data.setHighlightEnabled(true);
chart.setData(data);
chart.highlightValues(null);
chart.invalidate();
//^^^
// for (IDataSet<?> set : chart.getData().getDataSets())
// set.setDrawValues(!set.isDrawValuesEnabled());
// chart.invalidate();
chart.getLegend().setEnabled(false);//设置比例图
chart.animateX(1400);
//^^^
}
4. 性别如下:
case R.id.button1:
Map<String, Object> formatDatas1 = new HashMap<>();
StringBuilder key1=new StringBuilder();
key1.setLength(0);
key1.append(“男人”);
formatDatas1.put((),“67517”);
key1.setLength(0);
key1.append(“女人”);
formatDatas1.put((),“564781”);
setPieData1(pie_chart,formatDatas1);
break;
4.4 属性如下:
case R.id.button2:
Map<String, Object> formatDatas2 = new HashMap<>();
StringBuilder key2=new StringBuilder();
key2.setLength(0);
key2.append(“无”);
formatDatas2.put((),“0”);
key2.setLength(0);
key2.append(“学生1”);
formatDatas2.put((),“82429”);
key2.setLength(0);
key2.append(“学生2”);
formatDatas2.put((),“10201”);
key2.setLength(0);
key2.append(“学生2”);
formatDatas2.put((),“121606”);
key2.setLength(0);
key2.append(“学生”);
formatDatas2.put((),“159966”);
key2.setLength(0);
key2.append(“学生4”);
formatDatas2.put((),“12892”);
key2.setLength(0);
key2.append(“学生5”);
formatDatas2.put((),“246117”);
setPieData1(pie_chart,formatDatas2);
break;
4.5 原因如下:
case R.id.button:
Map<String, Object> formatDatas = new HashMap<>();
这份资料我从春招开始,就会将各博客、论坛。网站上等优质的Android开发中高级面试题收集起来,然后全网寻最优的解答方案。每一道面试题都是百分百的大厂面经真题最优解答。包知识脉络 诸多细节。
节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习。
《960页Android开发笔记》
《107页Android开发面试宝典》
包含了腾讯、百度、小米、阿里、乐视、美团、58、猎豹、60、新浪、搜狐等一线互联网公司面试被问到的题目。熟悉本文中列出的知识点会大大增加通过前两轮技术面试的几率。
《507页Android开发相关源码解析》
只要是程序员,不管是Java还是Android,如果不去阅读源码,只看API文档,那就只是停留于皮毛,这对我们知识体系的建立和完备以及实战技术的提升都是不利的。
真正最能锻炼能力的便是直接去阅读源码,不仅限于阅读各大系统源码,还包括各种优秀的开源库。
》**
包含了腾讯、百度、小米、阿里、乐视、美团、58、猎豹、60、新浪、搜狐等一线互联网公司面试被问到的题目。熟悉本文中列出的知识点会大大增加通过前两轮技术面试的几率。
[外链图片转存中…(img-hC4ESZkm-16497485624)]
《507页Android开发相关源码解析》
只要是程序员,不管是Java还是Android,如果不去阅读源码,只看API文档,那就只是停留于皮毛,这对我们知识体系的建立和完备以及实战技术的提升都是不利的。
真正最能锻炼能力的便是直接去阅读源码,不仅限于阅读各大系统源码,还包括各种优秀的开源库。
Android开发不会这些?如何面试拿高薪!
#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格
下一篇:中文乱码解决方案
推荐阅读
留言与评论(共有 9 条评论) |
本站网友 9700 | 27分钟前 发表 |
“10201”); key2.setLength(0); key2.append(“学生2”); formatDatas2.put(() | |
本站网友 宁晋县吧 | 26分钟前 发表 |
小米 | |
本站网友 夜色茫茫 | 15分钟前 发表 |
部分 | |
本站网友 中国电子北海产业园 | 20分钟前 发表 |
“246117”); setPieData1(pie_chart | |
本站网友 广州罗冲围 | 7分钟前 发表 |
我当时学过 C,C | |
本站网友 分众传媒广告价格 | 20分钟前 发表 |
百分比 data.setValueTextSize(12f); data.setHighlightEnabled(true); chart.setData(data); chart.highlightValues(null); chart.invalidate(); //^^^ // for (IDataSet<?> set | |
本站网友 肛门痒 | 16分钟前 发表 |
Map<String | |
本站网友 扶不起 | 10分钟前 发表 |
现在做Android移动开发已经有六年时间,从一个什么都不懂的小程序员到现在的项目经理,其中甘苦自知,对Android开发和对Android程序员的职业发展有一些自己的感悟,在这里愿与大家分享和讨论 |