Android ListView不显示数据库的内容

Android ListView不显示数据库的内容,android,Android,我正试图从我的数据库中读取一些信息,但当我运行我的应用程序时,它会显示为空白,我看不出哪里出了问题,或者我做错了什么 我已经更新了适配器函数,但仍然有一个空列表,每次添加新行时列表都会增加,但列表视图中没有数据。我也尝试过改变字体颜色,看看这是否是问题所在,但事实并非如此 显示数据库内容的片段: import android.app.Fragment; import android.database.Cursor; import android.os.Bundle; import android

我正试图从我的数据库中读取一些信息,但当我运行我的应用程序时,它会显示为空白,我看不出哪里出了问题,或者我做错了什么

我已经更新了适配器函数,但仍然有一个空列表,每次添加新行时列表都会增加,但列表视图中没有数据。我也尝试过改变字体颜色,看看这是否是问题所在,但事实并非如此

显示数据库内容的片段:

import android.app.Fragment;
import android.database.Cursor;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ListView;
import android.widget.SimpleCursorAdapter;

import java.sql.SQLException;

import app.rory.pocket_chef.Adapters.DBAdapter;
import app.rory.pocket_chef.Adapters.Recipes_Adapter;
import app.rory.pocket_chef.Adapters.Shopping_List_Adapter;
import app.rory.slidemenu.R;

/**
 * Created by Rory on 10/22/2014.
 */
public class shopping_List_Fragment extends Fragment {

    private Shopping_List_Adapter shopping;
    private DBAdapter db;


    View rootview;
    @Nullable
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        rootview = inflater.inflate(R.layout.shopping_list_layout, container, false);
        return rootview;
    }

    public void onActivityCreated (Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);

        //opeing the DBApater
        db = new DBAdapter(getActivity());
        try {
            db.open();
        } catch (SQLException e) {
            e.printStackTrace();
        }

        //opening the shopping_list_adapter
        shopping = new Shopping_List_Adapter(getActivity());
        try {
            shopping.open();
        } catch (SQLException e) {
            e.printStackTrace();
        }

        Cursor cursor = shopping.getAllShoppingList();

        String[] columns = new String[] {Shopping_List_Adapter.NAME, Shopping_List_Adapter.QUANTITY};
        int[] to = new int[] {R.id.shopping_list};

        SimpleCursorAdapter myCursorAdapter = new SimpleCursorAdapter(getActivity(),R.layout.row2, cursor, columns, to, 0);

        ListView shoppingList = (ListView)rootview.findViewById(R.id.shopping_list);
        shoppingList.setAdapter(myCursorAdapter);

    }


}
row2.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal" >

    <TextView
        android:id="@+id/item_name"
        android:paddingLeft="5dp"
        android:textSize="17dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
         />

    <TextView
        android:id="@+id/item_quantity"
        android:paddingLeft="5dp"
        android:textSize="17dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
         />

</LinearLayout>

尝试完成链接更改中的步骤

int[] to = new int[] {R.id.shopping_list};


您必须将值放在行布局(Row2.xml)的文本视图中,而不是列表布局中。

我一直在使用“Cursor Cursor=shopping.getAllShoppingList();”isntead,这是相同的还是我应该使用你的行?试试这个,你看到一个空的列表视图还是根本看不到它?我有一个空的列表视图,但是我知道数据库中有条目,如何从片段中调用数据库?我已经将片段中的getallShoppingList更改为一个简单的语句,就像您所做的一样,但仍然得到空列表
int[] to = new int[] {R.id.shopping_list};
int[] to = new int[] {R.id.item_name,R.id.item_quantity};