我在我的应用程序中使用AchartEngine。是否有可能取代传说。
横向
oA oB oC oD
但我想让它垂直
oA oB oC oD
是否可以改变传说的位置? 任何帮助都将受到高度赞赏。
答案 0 :(得分:0)
我通过黑客解决了这个问题。 (这是我/杰出的职业以来的第一次!)
见证:
xySeries.setTitle(legend + " ");
图表会测量空间,认为它没有水平空间,并垂直堆叠图例。
答案 1 :(得分:0)
然后我拿出空格并进行了较低级别的修改。在AbstractChart.java内部,函数drawLegend()
调整此块:
if (true) { // i > 0 && getExceed(currentWidth, renderer, right, width)) {
currentX = left;
currentY += renderer.getLegendTextSize();
size += renderer.getLegendTextSize();
currentWidth = currentX + extraSize;
}
如果他们需要具有不同图例方向的各种图表,则可以轻松地使人真正成为一个特色。
答案 2 :(得分:-1)
我没有使用AchartEngine,而是动态创建类似的东西。
这里是示例java代码。
public class MainActivity extends Activity {
private LinearLayout linear;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Random randomGenerator = new Random();
for (int i = 0; i < 100; i++) {
linear = (LinearLayout) findViewById(R.id.linear);
LinearLayout lay = new LinearLayout(this);
LinearLayout lay1 = new LinearLayout(this);
TextView text = new TextView(this);
text.setText("ONES");
text.setTextColor(Color.parseColor("#000000"));
text.setLayoutParams(new LinearLayout.LayoutParams(60, 40));
TextView line = new TextView(this);
line.setBackgroundColor(Color.parseColor("#00FF00"));
line.setLayoutParams(new LinearLayout.LayoutParams(5, 90));
TextView btn = new TextView(this);
int randomInt = randomGenerator.nextInt(100);
if (randomInt > 0 && randomInt <= 10) {
btn.setBackgroundColor(Color.parseColor("#FF1919"));
} else if (randomInt > 10 && randomInt <= 20) {
btn.setBackgroundColor(Color.parseColor("#C41300"));
} else if (randomInt > 20 && randomInt <= 30) {
btn.setBackgroundColor(Color.parseColor("#AB1100"));
} else if (randomInt > 30 && randomInt <= 40) {
btn.setBackgroundColor(Color.parseColor("#7A0C00"));
} else if (randomInt > 40 && randomInt <= 50) {
btn.setBackgroundColor(Color.parseColor("#3E0600"));
} else if (randomInt < 50 && randomInt <= 60) {
btn.setBackgroundColor(Color.parseColor("#000000"));
} else if (randomInt > 60 && randomInt <= 70) {
btn.setBackgroundColor(Color.parseColor("#003E0F"));
} else if (randomInt > 70 && randomInt <= 80) {
btn.setBackgroundColor(Color.parseColor("#007A1D"));
} else if (randomInt > 80 && randomInt <= 90) {
btn.setBackgroundColor(Color.parseColor("#00C42F"));
} else {
btn.setBackgroundColor(Color.parseColor("#11FF4A"));
}
Log.d("TAG", "randnumber" + randomInt);
btn.setLayoutParams(new LinearLayout.LayoutParams(randomInt, 40));
btn.setId(i);
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Log.d("TAG", "get id" + arg0.getId());
}
});
TextView text1 = new TextView(this);
text1.setText("1");
text1.setTextColor(Color.parseColor("#000000"));
text1.setLayoutParams(new LinearLayout.LayoutParams(60, 40));
lay1.setOrientation(LinearLayout.HORIZONTAL);
lay1.setGravity(Gravity.CENTER_VERTICAL);
// lay1.setPadding(0, 10, 0, 10);
lay1.addView(text);
lay1.addView(line);
lay1.addView(btn);
lay1.addView(text1);
lay.setOrientation(LinearLayout.VERTICAL);
lay.addView(lay1);
linear.addView(lay);
}
}
}
这是xml代码。
<LinearLayout 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:orientation="vertical"
tools:context=".MainActivity" >
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scrollbars="vertical" >
<LinearLayout
android:id="@+id/linear"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
</LinearLayout>
</ScrollView>