gpt4 book ai didi

android - 如何为 MPAndroidChart BarChart 设置高度和宽度?

转载 作者:太空狗 更新时间:2023-10-29 13:20:51 25 4
gpt4 key购买 nike

我正在尝试向 Activity 添加静态条形图,但它覆盖了整个屏幕。我正在使用的代码如下 -

主 Activity .java

 BarChart bc = (BarChart) findViewById(R.id.chart);


ArrayList<BarEntry> entries = new ArrayList<>();
entries.add(new BarEntry(4f, 0));
entries.add(new BarEntry(8f, 1));
entries.add(new BarEntry(6f, 2));
entries.add(new BarEntry(12f, 3));
entries.add(new BarEntry(18f, 4));
entries.add(new BarEntry(9f, 5));
entries.add(new BarEntry(12f, 6));
entries.add(new BarEntry(10f, 7));

BarDataSet dataset = new BarDataSet(entries, "# of Calls");

ArrayList<String> labels = new ArrayList<String>();
labels.add("January");
labels.add("February");
labels.add("March");
labels.add("April");
labels.add("May");
labels.add("June");
labels.add("July");
labels.add("August");
bc=new BarChart(this);

BarData data = new BarData(labels, dataset);


setContentView(bc);

bc.setData(data);

主 Activity .xml

<com.github.mikephil.charting.charts.BarChart
android:layout_width="200dp"
android:layout_height="200dp"
android:id="@+id/chart"
android:layout_below="@+id/textView"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginTop="62dp">

</com.github.mikephil.charting.charts.BarChart>

我哪里错了?有什么建议

最佳答案

当您调用 setContentView() 时,指定 View 的布局参数将被忽略,并设置为默认的 MATCH_PARENT,因此在您的代码中 setContentView(bc ) 将使您的条形图填满整个屏幕。

一种解决方案是将静态条形图 View 放在 ViewGroup 下,例如 LinearLayout,在 activity_main.xml 中,然后调用 setContentView(R.layout.activity_main)

编辑:

另一件事,在您的代码中,您通过执行以下操作获得了 xml 中定义的 BarChart:

BarChart bc = (BarChart) findViewById(R.id.chart);

这是正确的...但稍后在您的代码中,您通过将 bc 分配给您实例化的另一个 BarChart 使上面的行变得毫无意义:

bc=new BarChart(this);

因此,删除此行,您应该能够看到您的条形图。

关于android - 如何为 MPAndroidChart BarChart 设置高度和宽度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29150852/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com