gpt4 book ai didi

arraylist - 根据列表大小在Kotlin中初始化数组

转载 作者:行者123 更新时间:2023-12-02 13:21:13 34 4
gpt4 key购买 nike

我需要在LinearLayout中动态添加LineChart(使用MpAndroidChart)。

我已经声明了一个arrayList,命名为list。

 val list = arrayListOf<ABC>()
....

for (i in list) {
chart[] = LineChart(activity)
}

我应在[]中放入什么值?假设 list的saiz是2,我需要在 LinearLayout中有2个图表。

我应该如何初始化 LineChart

示例
chart[i] = LineChart(activity) ???

LineChart
public class LineChart extends BarLineChartBase<LineData> implements LineDataProvider {

public LineChart(Context context) {
super(context);
}

public LineChart(Context context, AttributeSet attrs) {
super(context, attrs);
}

public LineChart(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}

@Override
protected void init() {
super.init();

mRenderer = new LineChartRenderer(this, mAnimator, mViewPortHandler);
}

@Override
public LineData getLineData() {
return mData;
}

@Override
protected void onDetachedFromWindow() {
// releases the bitmap in the renderer to avoid oom error
if (mRenderer != null && mRenderer instanceof LineChartRenderer) {
((LineChartRenderer) mRenderer).releaseBitmap();
}
super.onDetachedFromWindow();
}
}

最佳答案

您的问题尚不清楚,但是我没听错,您可以像这样在一行中完成此操作:

val chart = Array(list.size){ LineChart(list[it]) }

要么:
val chart = list.map{ LineChart(it) }.toTypedArray()

(后者会创建一个临时列表,效率可能会稍低;但是它会遍历列表而不是建立索引,如果列表不是随机访问的,则可能会更快。)

关于arraylist - 根据列表大小在Kotlin中初始化数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56375884/

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