文档章节

在 LinearLayout里addView一个图表

mutouzhang
 mutouzhang
发布于 2014/03/31 13:56
字数 341
阅读 973
收藏 2

activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
   >

    <Button
        android:id="@+id/head"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="测试用顶部" />

    <LinearLayout
        android:id="@+id/chart"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:orientation="horizontal" />

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <Button
            android:id="@+id/new_series"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="new_series" />
    </LinearLayout>
    	    
    
</LinearLayout>

activity_main.xml(经过测试 发现不需要 只有在图表生成Intent跳转新页面的时候才需要添加这个 addView不需要 )

 <activity android:name="org.achartengine.GraphicalActivity" />

MainActivity.java

package com.example.chartdemo_31_3;

import java.util.Random;

import org.achartengine.ChartFactory;
import org.achartengine.chart.PointStyle;
import org.achartengine.model.XYMultipleSeriesDataset;
import org.achartengine.model.XYSeries;
import org.achartengine.renderer.XYMultipleSeriesRenderer;
import org.achartengine.renderer.XYSeriesRenderer;

import android.os.Bundle;
import android.app.Activity;
import android.graphics.Color;
import android.view.View;
import android.widget.LinearLayout;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        
        //建立渲染器 
        XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer();
        //建立数据集
        XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
        
        //构建数据
        Random random = new Random();
        
        for (int i = 0; i < 2; i++)//2条线
		{
			XYSeries series = new XYSeries("Test"+(i+1));//设置Title
        
	        //填充数据 
	        for (int j = 0; j < 10; j++)
			{
				series.add(j, 20+random.nextInt()%100);//填加xy值
			}
	        
	        //把需要绘制的点放进dataset数据集中
	        dataset.addSeries(series);
		}
        
        //对点的绘制进行设置
        XYSeriesRenderer xySeriesRenderer = new XYSeriesRenderer();
        //1设置颜色
        xySeriesRenderer.setColor(Color.GRAY);
        //2点的样式
        xySeriesRenderer.setPointStyle(PointStyle.SQUARE);
        //3, 将要绘制的点添加到坐标绘制中
        renderer.addSeriesRenderer(xySeriesRenderer);
        
        xySeriesRenderer = new XYSeriesRenderer();
        xySeriesRenderer.setColor(Color.BLUE);
        xySeriesRenderer.setPointStyle(PointStyle.CIRCLE);
        renderer.addSeriesRenderer(xySeriesRenderer);
        
//        renderer.setPanEnabled(false);//是否允许拖动
        
//        Intent intent = ChartFactory.getLineChartIntent(this, dataset, renderer);
//        startActivity(intent);
        View view = ChartFactory.getLineChartView(this, dataset, renderer);
        LinearLayout linearLayout = (LinearLayout) findViewById(R.id.chart);
        linearLayout.addView(view);
    }

}


© 著作权归作者所有

mutouzhang
粉丝 6
博文 190
码字总数 91235
作品 0
洛阳
程序员
私信 提问
动态加载布局和控件的方式实现动态加载(用listView解决EditText问题挺麻烦)

//第一步要声明些map来保存这些控件 Map<String, EditText> mapedit ; // 根据 mxb中的 autobh ->memo封装 控件 Map<String, String> mapv ;// 封装mxb中的autobh->jcjg List<String> listb......

761218914
2016/01/09
2
0
android stackover flow problem

在做android UI 的时候,遇到了一个问题,因为不同的UI之间需要相互切换。所以不加思索的写了下面的程式 public class FirstLayout extends LinearLayout { public FirstLayout (Context co...

John_Zhang
2011/05/14
0
0
怎样使 Android 的 ScrollView 动态请求数据

各位大哥,小弟最近遇到一个问题,在做android一个页面的时候,我这样设计的 pubic class EventView extends LinearLayout{ public LinearLayout totalAreaLayout = null; public ScrollVie...

John_Zhang
2011/05/20
3K
2
Android ViewManager实例

LinearLayout实现了ViewManager接口。 当LinearLayout调用addView (View view, ViewGroup.LayoutParams params)方法后,LinearLayout中会增加一个子视图,并重新绘制自己。子视图的布局参数是...

android技术开发
2013/09/04
0
0
Android 利用addView 动态给Activity添加View组件

本文主要讲述如何动态给UI界面添加布局和控件,在编程的时候很多时候需要动态显示一些内容,在动态添加View的时候,主要使用addView方法。 1. addView方法简介 在Android 中,可以利用排版Vie...

小湘西
2015/09/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

在阿里云ecs服务器(linux之centos系统)安装调试nginx

购买阿里云ecs服务器实例 由于这里只是测试,我们就随便买一个(当然我就选最便宜的了,这里的抢占式实例测试完可以直接释放) 选择centos7.6镜像 点击下一步:网络和安全组 接下来选中开通h...

祖达
昨天
2
0
【阴阳师】真蛇10层记录

蛇切黑体系 追月神 散件一速,速度越高越好(220+) 镰鼬 招财二速,速度211以上; 山兔 火灵三速,速度180-200均可; 丑女 心眼四速,速度170左右即可; 大蛇 蚌精暴击套。速度高于阴阳师即...

Areya
昨天
5
0
js动态设置元素高度

this.$refs.xxx.style.height= this.contentHeight; 元素需要绑定

Carbenson
昨天
3
0
今天的学习

今天学到了ci框架中的查询语句的where条件语句: 1、$this->db->select('')->from('')->where('id = ??')->get()->result_array();2、$this->db->select('')->from('')->where('id', '??'......

墨冥
昨天
2
0
MySQL在高并发下的订单撮合、系统使用、共享锁与排他锁保证数据一致性

前序 距离上次择文发表,两月余久。2018年也即将要结束了,目前的工作依然是与区块链应用相关的,也很荣幸在9月初受邀签约出版暂名为《区块链以太坊DApp实战开发》一书,预计在明年年初出版。...

我最喜欢三大框架
昨天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部