在我的项目中,我有数据库,我想将数据库中的数据填充到我的列表视图中。但它没有任何错误地显示任何内容。 我轻松打开数据库并从中获取数据并设置为我的arraylist,最后我将其放入我的listview中。 问题出在哪儿? 我是android新手 这是我的代码:
public class MainActivity extends Activity {
private ListView listView;
public static SqliteHelper database;
private ArrayList<ItemJomle> arrayDatas;
private ArrayAdapter adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
arrayDatas = new ArrayList<>();
database = new SqliteHelper(this);
try {
database.createDataBase();
} catch (IOException e) {
e.printStackTrace();
}
listView = (ListView)findViewById(R.id.lstcontent);
updateListViewData();
}
public void updateListViewData() {
database.open();
arrayDatas = database.getDataListView();
adapter = new AdapterData(arrayDatas);
listView.setAdapter(adapter);
adapter.notifyDataSetChanged();
database.close();
}
public static void updateFav(int id,String value){
database.open();
database.updateDatabase(id,value);
database.close();
}
}
这是我的代码:
public ArrayList<ItemJomle> getDataListView() {
String selectQuery = "SELECT * FROM " + TBL_NAME ;
arrayListViwedatas.clear();
Cursor cu = Mydb.rawQuery(selectQuery, null);
if(cu!=null){
cu.moveToFirst();
if(cu.moveToFirst()){
while (cu.isAfterLast() == false) {
ItemJomle item = new ItemJomle();
item.id = cu.getInt(cu.getColumnIndex("id"));
item.subject = cu.getString(cu.getColumnIndex("subject"));
item.text = cu.getString(cu.getColumnIndex("text"));
item.nubmer = cu.getString(cu.getColumnIndex("number"));
item.fav = cu.getString(cu.getColumnIndex("fav"));
arrayListViwedatas.add(item);
cu.moveToNext();
}
cu.close();
}
}
return arrayListViwedatas;
}
and my layout:
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1">
<ListView
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/lstcontent"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:divider="@null"/>
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center">
<com.vizitsaz.ClickBanner_CLickYab_Holder
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerInParent="true"/>
</LinearLayout>