MPAndroidChart棒グラフにSQLiteデータベースを入力します

スコット

SQLクエリの結果を表示するために使用するMPAndroidChartがあり、収入列の合計を示し、income_categoryでグループ化します。ここにいる別のユーザーが私を動作に近づけましたが、BarChart.setDataを実行するとnullオブジェクト参照エラーが発生します。デバッグはクエリが機能することを示しているので、なぜそれがnullであるのか理解できません。以下は、BudgetDbHelperのコードです。

public ArrayList<BarEntry> getBarEntries() {
    String income_sum_column = "income_sum";
    SQLiteDatabase db = this.getReadableDatabase();
    String[] columns = new String[]{"SUM(income) AS " + income_sum_column,"income_category"};
    Cursor csr = db.query("transactions",columns,null,null,"income_category",null,null);
    ArrayList<BarEntry> rv = new ArrayList<>();
    while(csr.moveToNext()) {
        rv.add(new BarEntry(
                csr.getInt(csr.getColumnIndex("income_category")),
                csr.getFloat(csr.getColumnIndex(income_sum_column))
        ));
    }
    csr.close();
    return rv; 

そして、これがCYIncomeChartActivityのコードです。

public class CYIncomeChartActivity extends AppCompatActivity {

    SQLiteDatabase sqLiteDatabase;

    // Database helper object //
    private BudgetDbHelper mDbHelper;

    BarChart barChart;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_cy_income_chart);

        mDbHelper = new BudgetDbHelper(this);
        sqLiteDatabase = mDbHelper.getWritableDatabase();

        ArrayList<BarEntry> barEntries = mDbHelper.getBarEntries();

        BarDataSet barDataSet = new BarDataSet(barEntries,"Income By Income Category");
        barDataSet.setColors(ColorTemplate.COLORFUL_COLORS);

        BarData barData = new BarData(barDataSet);
        barData.setBarWidth(0.9f);

        barChart.setData(barData);

    }


}
タイラーV

あなたの問題はそれbarChartがnullであるということです、なぜならあなたはそれを何にも設定したことがないからです。あなたは次のようなものが必要です

barChart = findViewById(R.id.my_chart);

あなたが電話する前にそこに

barChart.setData(barData);

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Python: SQlite3 データベースのデータを使用して Tkinter で棒グラフを作成する

分類Dev

データをフィルタリングしてD3.jsスタック棒グラフにデータを入力する方法は?

分類Dev

入力フィールドをデータベースに挿入します

分類Dev

xml挿入をSQLiteデータベースに解析し、フラグメントにデータを表示します

分類Dev

データベース行からデータを取得し、selectタグにデータを入力します

分類Dev

selectタグにデータベースの値を入力します

分類Dev

ラジオ入力にデータベースデータを入力します

分類Dev

MySQLデータベース構文エラーをjTableに入力します

分類Dev

フラグメントにデータベースデータをランダムに入力する方法

分類Dev

AndroidのSQLiteデータベースからListViewにデータを入力します

分類Dev

データベースにスコアを入力します

分類Dev

SQLiteデータベースにArrayListを挿入します

分類Dev

sqliteデータベースのachartengine棒グラフ

分類Dev

enumにデータベースの値を入力します

分類Dev

DataTableにMySQLデータベースを入力します

分類Dev

AndroidStudioがデータベースをRecyclerVIewに入力します

分類Dev

CKEditorでフォームに入力したデータをMySQLデータベースに保存します

分類Dev

csvファイルを使用してRoomデータベースにデータを入力します

分類Dev

sqliteデータベースにデータを挿入します

分類Dev

データベースSQLiteにデータを挿入します

分類Dev

データベースからのデータを更新フォームに事前入力します

分類Dev

データベースからwoocommerce_wp_selectフィールドにデータを入力します

分類Dev

Dimple.js-棒グラフの各棒にデータラベルを追加します

分類Dev

AWS MobileAnalyticsの収益グラフにデータを入力します

分類Dev

フラグメントのGridViewにデータを入力します

分類Dev

データベースLaravelBladeからのデータをラジオボタンに入力します

分類Dev

プログラムフォルダにあるSQLiteデータベースを操作します

分類Dev

FirebaseデータベースからtextViewにデータを入力します

分類Dev

Android:データベースからListViewにデータを入力します

Related 関連記事

  1. 1

    Python: SQlite3 データベースのデータを使用して Tkinter で棒グラフを作成する

  2. 2

    データをフィルタリングしてD3.jsスタック棒グラフにデータを入力する方法は?

  3. 3

    入力フィールドをデータベースに挿入します

  4. 4

    xml挿入をSQLiteデータベースに解析し、フラグメントにデータを表示します

  5. 5

    データベース行からデータを取得し、selectタグにデータを入力します

  6. 6

    selectタグにデータベースの値を入力します

  7. 7

    ラジオ入力にデータベースデータを入力します

  8. 8

    MySQLデータベース構文エラーをjTableに入力します

  9. 9

    フラグメントにデータベースデータをランダムに入力する方法

  10. 10

    AndroidのSQLiteデータベースからListViewにデータを入力します

  11. 11

    データベースにスコアを入力します

  12. 12

    SQLiteデータベースにArrayListを挿入します

  13. 13

    sqliteデータベースのachartengine棒グラフ

  14. 14

    enumにデータベースの値を入力します

  15. 15

    DataTableにMySQLデータベースを入力します

  16. 16

    AndroidStudioがデータベースをRecyclerVIewに入力します

  17. 17

    CKEditorでフォームに入力したデータをMySQLデータベースに保存します

  18. 18

    csvファイルを使用してRoomデータベースにデータを入力します

  19. 19

    sqliteデータベースにデータを挿入します

  20. 20

    データベースSQLiteにデータを挿入します

  21. 21

    データベースからのデータを更新フォームに事前入力します

  22. 22

    データベースからwoocommerce_wp_selectフィールドにデータを入力します

  23. 23

    Dimple.js-棒グラフの各棒にデータラベルを追加します

  24. 24

    AWS MobileAnalyticsの収益グラフにデータを入力します

  25. 25

    フラグメントのGridViewにデータを入力します

  26. 26

    データベースLaravelBladeからのデータをラジオボタンに入力します

  27. 27

    プログラムフォルダにあるSQLiteデータベースを操作します

  28. 28

    FirebaseデータベースからtextViewにデータを入力します

  29. 29

    Android:データベースからListViewにデータを入力します

ホットタグ

アーカイブ