【问题标题】:How to Create Button in achartEngine Bar Chart acitivity如何在 achartEngine 条形图活动中创建按钮
【发布时间】:2015-10-30 05:37:28
【问题描述】:

我正在使用 Android 上的图表。但我无法在achartengine 条形图上创建按钮。问题是当我创建一个按钮时,它已成功创建,但它出现在第一个 Activity(即 MainActivity)上。但是,图表显示在另一个活动 GraphicalActivity 上。如何将 Button 添加到 GraphicalActivity?

在我调用的清单中

<activity android:name="org.achartengine.GraphicalActivity" />//Another activity to display chart

在 main.xml 中

<RelativeLayout xmlns: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:text="@string/str_tv_title"
            tools:context=".MainActivity" >
 <Button
    android:id="@+id/btn1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
     android:layout_alignParentRight="true"
    android:layout_marginLeft="10dp"
    android:layout_marginRight="15dp"
    android:layout_marginTop="360dp"
    android:text="Next" />
 </RelativeLayout>

它工作正常,但此按钮显示在第一个活动上,例如主要活动。如何在 GraphicalActivity 中创建它?

附加图片显示了主要活动。之后它调用 GraphicalActivity。那么如何在 GraphicalActivity 上添加按钮呢?

【问题讨论】:

    标签: android android-layout bar-chart achartengine


    【解决方案1】:

    我认为您已经在一个活动(称为 MainActivity)上创建了按钮,并使用 achartLibrary 在另一个活动中生成了图表。

    在您的图表生成位置添加 sn-p...

    这里是你的答案 siboo

    添加LinearLayout以在按钮的相同活动中显示图表

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    >
    
    <Button
        android:id="@+id/btn_chart"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/str_btn_chart"
        android:layout_alignParentTop="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentLeft="true" />
    
    <LinearLayout
        android:id="@+id/chartLayout"
        android:orientation="horizontal"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_below="@+id/btn_chart"
        android:layout_alignParentRight="true"
        android:background="#000"/>
    

    Java部分

    multiRenderer.addSeriesRenderer(incomeRenderer);之后添加以下代码

    if (mChartView == null) {
    LinearLayout layout = (LinearLayout) findViewById(R.id.chartLayout);
    GraphicalView mChartView = ChartFactory.getBarChartView(getBaseContext(), dataset, multiRenderer, BarChart.Type.DEFAULT);
    layout.addView(mChartView, new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
    }
    else {mChartView.repaint();}
    

    并删除

    Intent intent = ChartFactory.getBarChartIntent(getBaseContext(), dataset, multiRenderer, Type.DEFAULT);

    它会工作的......快乐编码

    【讨论】:

    • 我使用了来自 wptrafficanalyzer.in/blog/… 的相同代码。
    • 在您的参考中,编码为使用 Intent 在新活动中生成图表,如 Intent intent = ChartFactory.getBarChartIntent(getBaseContext(), dataset, multiRenderer, Type.DEFAULT);
    • 那么你能告诉我如何在新活动中添加按钮
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-23
    • 2013-02-19
    相关资源
    最近更新 更多