AndroidPlot - XYplot не отображается на графическом макете в XML
Я довольно новичок в области разработки для Android, однако я сделал несколько очень простых приложений, чтобы понять, как будет выглядеть рабочий процесс в среде.
У меня проблемы с запуском примера программы под названием SimpleXYPlotExample, и вот код, manifest, main.xml и activity.java, соответственно. Я знаю, что это какая-то ошибка пользователя, но было бы здорово, если бы кто-нибудь дал мне несколько полезных советов о том, что я делаю неправильно.
Сначала весь код был сломан, но я понял, что забыл импортировать библиотеку. Теперь, когда я это сделал, я пытаюсь запустить программу на своих нексусах, и она просто вылетает при входе.
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk
android:minSdkVersion="6"
android:targetSdkVersion="16"/>
<application android:label="SimpleXYPlotExample"
android:icon="@drawable/icon"
android:debuggable="true"
android:hardwareAccelerated="false">
<activity android:name=".MyActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>
</manifest>
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<com.androidplot.xy.XYPlot
android:id="@+id/mySimpleXYPlot"
android:layout_width="fill_parent"
android:layout_height="150px"
android:layout_marginTop="10px"
android:layout_marginLeft="10px"
android:layout_marginRight="10px"
andsroidplot.title="A Simple XYPlot Example"
androidplot.ticksPerRangeLabel="4"
androidplot.ticksPerDomainLabel="2"
androidplot.gridPadding="4dp|4dp|4dp|4dp"
/>
</LinearLayout>
package com.example;
import java.util.Arrays;
import android.app.Activity;
import android.os.Bundle;
import com.androidplot.series.XYSeries;
import com.androidplot.ui.AnchorPosition;
import com.androidplot.xy.LineAndPointFormatter;
import com.androidplot.xy.SimpleXYSeries;
import com.androidplot.xy.XLayoutStyle;
import com.androidplot.xy.XYPlot;
import com.androidplot.xy.YLayoutStyle;
public class MyActivity extends Activity
{
private XYPlot plot;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// initialize our XYPlot reference:
plot = (XYPlot) findViewById(R.id.mySimpleXYPlot);
// add a new series
XYSeries mySeries = new SimpleXYSeries(
Arrays.asList(0, 25, 55, 2, 80, 30, 99, 0, 44, 6),
SimpleXYSeries.ArrayFormat.Y_VALS_ONLY, "series1");
plot.addSeries(mySeries, new LineAndPointFormatter(
getApplicationContext(), R.xml.f1));
// reposition the domain label to look a little cleaner:
plot.position(plot.getDomainLabelWidget(), // the widget to position
45, // x position value, in this case 45 pixels
XLayoutStyle.ABSOLUTE_FROM_LEFT, // how the x position value is applied, in this case from the left
0, // y position value
YLayoutStyle.ABSOLUTE_FROM_BOTTOM, // how the y position is applied, in this case from the bottom
AnchorPosition.LEFT_BOTTOM); // point to use as the origin of the widget being positioned
plot.centerOnRangeOrigin(60);
plot.centerOnDomainOrigin(5);
}
}
Этому может способствовать тот факт, что сюжет даже не отображается на графическом макете. Вот как это выглядит с этим кодом:
Как видите, я импортировал библиотеку androidplot. Пожалуйста, порекомендуйте.
1 ответ
Снимок экрана выглядит из графического редактора eclipse, который, как упоминалось в исключении, не поддерживает метод setShadowLayer и, следовательно, не будет отображаться. Это всего лишь ограничение в Eclipse, а не ошибка в вашем коде или библиотеке.
Обычно, чтобы иметь возможность ответить на вопросы о том, почему Androidplot дает сбой, вам нужно предоставить соответствующую трассировку стека. Однако я заметил эту опечатку в вашем XML:
andsroidplot.title="A Simple XYPlot Example"
Что касается получения работающего редактора WYSIWYG, я лично хотел бы попробовать IntelliJ IDEA или Android Studio (построенную на текущей версии EAP IntelliJ IDEA). Оба являются бесплатными, и оба находятся в (ИМХО) намного превосходящих IDE.