android中的数据库显示

时间:2012-07-12 05:21:16

标签: android

我想从数据库中显示一个表,其中包含5个不同字符串长度的列。这是显示它的最佳方式。谢谢我前进。以前我尝试过listview但是各种字符串长度显示的行不正确。

我的layout.xml代码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:paddingTop="4dip"
     android:paddingBottom="6dip"
     android:layout_width="fill_parent"
     android:layout_height="wrap_content"
     android:orientation="horizontal">           

     <TextView android:id="@+id/text1"      
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" /> 

     <TextView android:id="@+id/text3"          
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="40dp"
        android:layout_alignParentRight="true"/>

     <TextView android:id="@+id/text5"          
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="40dp"
        android:layout_alignParentRight="true"/>

     <TextView android:id="@+id/text7"          
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="40dp"
        android:layout_alignParentRight="true"/>

     <TextView android:id="@+id/text9"          
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="40dp"
        android:layout_alignParentRight="true"/>

     <TextView
        android:id="@+id/textView21"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"/> 

</LinearLayout>

java代码:

super.onCreate(savedInstanceState);
setContentView(R.layout.report);            
String[] from;
int[] to;
db.open();          
ListView lv=(ListView)findViewById(R.id.listView1);     
Cursor c = db.getEducationTitle();

while(c. moveToNext())
{
    // Cursor c = db.getEducationTitle();
    LinearLayout linearlayout=(LinearLayout)findViewById(R.id.Layout1);
    TextView edt=(TextView) new TextView(getApplicationContext());
    edt.setText(c.getString(c.getColumnIndex("col1"))+" "+c.getString(c.getColumnIndex("col2"))+" "+c.getString(c.getColumnIndex("col3"))+c.getString(c.getColumnIndex("col4"))+" "+c.getString(c.getColumnIndex("col5")));
    linearlayout.addView(edt);

}

2 个答案:

答案 0 :(得分:0)

试试这个......

 SQLiteDatabase db=openOrCreateDatabase("databasename", MODE_PRIVATE, null);
    Cursor c=db.rawQuery("SELECT * FROM tablename, null);
    c.moveToFirst();
    LinearLayout linearlayout=(LinearLayout)findViewById(R.id.linearlayout);

       while(cursor.moveToNext)
        {

                TextView edt=(TextView) new TextView(getApplicationContext());
                edt.setText(c.getString(c.getColumnIndex("col1"))+" "+c.getString(c.getColumnIndex("col2"))+" "+c.getString(c.getColumnIndex("col3"))+" "+c.getString(c.getColumnIndex("col4"))+" "+c.getString(c.getColumnIndex("col5")));
                linearlayout.addView(edt);

        }

答案 1 :(得分:0)

动态表格布局是您最好的选择。

检查此tutorial