首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用achartEngine?

如何使用achartEngine?
EN

Stack Overflow用户
提问于 2011-08-02 16:50:50
回答 2查看 3.7K关注 0票数 2

我试图用AchartEngine API在我的应用程序中制作一些图形,但它不起作用。

谁能解释一下如何使用graphic而不是Intent来创建视图

因为在演示代码中,它只按Intent,而不是按视图。

编辑:我试着同时测试两个选项:我有一个带按钮的linearLayout:

代码语言:javascript
复制
<LinearLayout android:id="@+id/list_infos_layout_stat" android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1" >

<Button 
    android:id="@+id/list_infos_bouton_stats"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="statistiques"
/>

当我点击按钮时,ChartFactory.getLineChartIntent(..)方法生成了一个新的活动,它工作得很好。

在同一个LinearLayout中,我放置了一个由ChartFactory.getLineChartView方法返回的视图,这没问题,我在按钮的右边有一个图形。但是当我拿掉按钮的时候我什么都没有...

代码语言:javascript
复制
View graphique = new ReponsesChart().getView(contexte);
        if (graphique !=null){
            LinearLayout layout = (LinearLayout)convertView.findViewById(R.id.list_infos_layout_stat);
            layout.addView(graphique, new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT));
        } else {
            Log.d("Infos", "GRAPHIQUE NULL");
        }

编辑2:通过将视图添加到布局时替换填充父级属性,修复了屏幕宽度

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-08-02 18:00:22

在ChartFactory类中,有几种方法可以像这样使用:

代码语言:javascript
复制
    GraphicalView gView=ChartFactory.getDoughnutChartView(context,data,renderer);

对于其他图形类型,如折线图和条形图,也是类似的。然后您可以简单地调用:

代码语言:javascript
复制
    setContentView(gView);

下载AChartEngine的文档,在那里很容易找到。

票数 3
EN

Stack Overflow用户

发布于 2011-08-02 17:49:32

写入位图的东西会有帮助吗?我在我的一些代码中使用了以下内容:

代码语言:javascript
复制
final XYMultipleSeriesRenderer multipleRenderer = new XYMultipleSeriesRenderer();
final XYSeriesRenderer renderer = new XYSeriesRenderer();
multipleRenderer.addSeriesRenderer(renderer);

final XYMultipleSeriesDataset dataset = final XYMultipleSeriesDataset dataset = ...

final Bitmap image1 = Bitmap.createBitmap(WIDTH, HEIGHT, Bitmap.Config.ARGB_8888);    
final TimeChart tc = new TimeChart(dataset, multipleRenderer);

final Canvas canvas = new Canvas(image1);
tc.draw(canvas, 0, 0, WIDTH, HEIGHT, paint);
final Bitmap image = Bitmap.createBitmap(image1, 0, 0, WIDTH, HEIGHT);

请注意,我删除了大量与初始化multipleRender和dataset相关的代码

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6909463

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档