老师让我们做的是一个安卓学生成绩管理系统
我创建了一个学生类表 有stuid stuname stusex wuli shuxue yingyu jisuanji
就是四科成绩加上一些个人信息
然后我现在想通过插入五条数据 先显示他们5个人的名字
然后通过名字点击item跳转到他们的详细信息ACTIVITY
但是!!
崩溃啊!!
我自己研究了4天都没弄好才敢上来问啊
这对我很重要啊 希望大神表要吝啬教小弟啊
现在贴一下主函数list 的代码
public class list extends ListActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
DBHelper helper = new DBHelper(this,null,null,1);
SQLiteDatabase database = helper.getWritableDatabase();
database.execSQL("INSERT INTO Student VALUES (stuid,stuname,stusex,wuli,shuxue,yingyu,shuxue)", new Object[]{131,"小红","女",88,77,85,46});
database.execSQL("INSERT INTO Student VALUES (?,?,?,?,?,?,?)", new Object[]{10002,"小红","女",88,77,85,46});
database.execSQL("INSERT INTO Student VALUES (?,?,?,?,?,?,?)", new Object[]{10003,"小蓝","男",88,78,65,22});
database.execSQL("INSERT INTO Student VALUES (?,?,?,?,?,?,?)", new Object[]{10004,"小绿","男",88,77,55,55});
database.execSQL("INSERT INTO Student VALUES (?,?,?,?,?,?,?)", new Object[]{10005,"小黄","男",88,75,55,98});
database.execSQL("INSERT INTO Student VALUES (?,?,?,?,?,?,?)", new Object[]{10006,"小青","女",88,77,59,82});
String sql = "select * from Student where stuid = ?";
String[] args = {Student.stuid + ""};
Cursor cursor = helper.getReadableDatabase().rawQuery(sql, args);
while (cursor.moveToNext()) {
Student student = new Student();
student.setId(cursor.getInt(0));
}
helper.close();
}
@Override
public void onListItemClick(ListView parent,View v, int position, long id){
super.onListItemClick(parent, v, position, id);
Intent intent=new Intent();
if (0==position){
intent.setClass(list.this,MainActivity.class);
list.this.startActivity(intent);
list.this.finish();
}
}
}详细信息的第二个activity的代码
public class MainActivity extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editStuid=(EditText)findViewById(R.id.editstuid);
editName=(EditText)findViewById(R.id.editstuname);
editSex=(EditText)findViewById(R.id.editstusex);
editWuli=(EditText)findViewById(R.id.editwuli);
editShuxue=(EditText)findViewById(R.id.editshuxue);
editYingyu=(EditText)findViewById(R.id.edityingyu);
editJisuanji=(EditText)findViewById(R.id.editjisuanji);
helper = new DBHelper(this,null,null,1);
final SQLiteDatabase database = helper.getWritableDatabase();
database.execSQL("INSERT INTO Student VALUES (?,?,?,?,?,?,?)", new Object[]{131,"小红","女",88,77,85,46});
// database.execSQL("INSERT INTO Student VALUES (?,?,?,?,?,?,?)", new Object[]{10002,"小红","女",88,77,85,46});
// database.execSQL("INSERT INTO Student VALUES (?,?,?,?,?,?,?)", new Object[]{10003,"小蓝","男",88,78,65,22});
// database.execSQL("INSERT INTO Student VALUES (?,?,?,?,?,?,?)", new Object[]{10004,"小绿","男",88,77,55,55});
// database.execSQL("INSERT INTO Student VALUES (?,?,?,?,?,?,?)", new Object[]{10005,"小黄","男",88,75,55,98});
// database.execSQL("INSERT INTO Student VALUES (?,?,?,?,?,?,?)", new Object[]{10006,"小青","女",88,77,59,82});
final Cursor cursor = database.rawQuery("SELECT * FROM Student1 WHERE ID = ?",null);
while (cursor.moveToNext())
{
editStuid.setText(cursor.getString(0)+"\n");
editName.setText(cursor.getString(1)+"\n");
editSex.setText(cursor.getString(2)+"\n");
editWuli.setText(cursor.getString(3)+"\n");
editShuxue.setText(cursor.getString(4)+"\n");
editYingyu.setText(cursor.getString(5)+"\n");
editJisuanji.setText(cursor.getString(6)+"\n"); }}}
这个是我的DBHelper
public class DBHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "test1.db";
private static final int DATABASE_VERSION = 1;
public DBHelper(Context context,String name, CursorFactory factory, int version) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase database) {
database.execSQL("CREATE TABLE IF NO EXISTS Student" +
"(stuid INTEGER PRIMARY KEY, stuname VACHAR , stusex VACHAR,wuli INTEGER,shuxue INTEGER,yingyu INTEGER,jisuanji INTEGER)");
}
public void onUpgrade(SQLiteDatabase database, int oldVersion, int newVersion) {
database.execSQL("DROP TABLE IF EXISTS Student");
onCreate(database); } }
public class Student {
public static int stuid;
public String stuname;
public String stusex;
public int wuli;
public int shuxue;
public int yingyu;
public int jisuanji;
public Student() {
super();
}
public Student(int stuid,String stuname, String stusex, int wuli, int shuxue,int yingyu,int jisuanji) {
super();
this.stuid=stuid;
this.stuname = stuname;
this.stusex = stusex;
this.wuli = wuli;
this.shuxue=shuxue;
this.yingyu=yingyu;
this.jisuanji=jisuanji;
}
public String toString()
{
return "Student [id=" + stuid + ", name=" + stuname + ", sex=" + stusex +",物理成绩"+wuli+",数学成绩"+shuxue+",英语成绩"+yingyu+",计算机成绩"+jisuanji +"]";}
public Integer getId() {
return stuid;
}
public void setId(int stuid) {
this.stuid = stuid;
}
public String getName() {
return stuname;
}
public void setName(String stuname) {
this.stuname = stuname;
}
public String getSex() {
return stusex;
}
public void setSex(String stusex) {
this.stusex = stusex;
}
public int getWuli() {
return wuli;
}
public void setWuli(int wuli) {
this.wuli = wuli;
}
public int getShuxue() {
return shuxue;
}
public void setShuxue(int shuxue) {
this.shuxue = shuxue;
}
public int getYingyu() {
return yingyu;
}
public void setYingyu(int yingyu) {
this.yingyu = yingyu;
}
public int getJisuanji() {
return jisuanji;
}
public void setJisuanji(int jisuanji) {
this.jisuanji = jisuanji;
}
}
这个是常量
public final class TableContanst {
public static final String STUDENT_TABLE = "Student";
public static final class StudentColumns {
public static final String stuid = "stuid";
public static final String stuname = "name";
public static final String stusex = "age";
public static final String wuli = "sex";
public static final String shuxue = "shuxue";
public static final String yingyu = "yingyu";
public static final String jisuanji = "jisuanji"; }
}
<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TableRow>
<TextView
android:id="@+id/stuid"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="学号" />
<EditText
android:id="@+id/editstuid"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</TableRow>
<TableRow >
<TextView
android:text="姓名"
android:layout_height="wrap_content"
android:textSize="20dip"
android:layout_width="fill_parent"
android:id="@+id/stuname"
/>
<EditText
android:id="@+id/editstuname"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</TableRow>
<TableRow >
<TextView
android:id="@+id/stusex"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="性别" />
<EditText
android:id="@+id/editstusex"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</TableRow>
<TableRow >
<TextView
android:id="@+id/wuli"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="物理成绩" />
<EditText
android:id="@+id/editwuli"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</TableRow>
<TableRow >
<TextView
android:id="@+id/yingyu"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="英语成绩"
/>
<EditText
android:id="@+id/edityingyu"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</TableRow>
<TableRow >
<TextView
android:id="@+id/shuxue"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="数学成绩"
/>
<EditText
android:id="@+id/editshuxue"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</TableRow>
<TableRow >
<TextView
android:id="@+id/jisuanji"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="计算机成绩"
/>
<EditText
android:id="@+id/editjisuanji"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</TableRow>
</TableLayout>
<?xml version="1.0" encoding="utf-8"?>
<ListView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/list01"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
</ListView>
我创建了一个学生类表 有stuid stuname stusex wuli shuxue yingyu jisuanji
就是四科成绩加上一些个人信息
然后我现在想通过插入五条数据 先显示他们5个人的名字
然后通过名字点击item跳转到他们的详细信息ACTIVITY
但是!!
崩溃啊!!
我自己研究了4天都没弄好才敢上来问啊
这对我很重要啊 希望大神表要吝啬教小弟啊
现在贴一下主函数list 的代码
public class list extends ListActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
DBHelper helper = new DBHelper(this,null,null,1);
SQLiteDatabase database = helper.getWritableDatabase();
database.execSQL("INSERT INTO Student VALUES (stuid,stuname,stusex,wuli,shuxue,yingyu,shuxue)", new Object[]{131,"小红","女",88,77,85,46});
database.execSQL("INSERT INTO Student VALUES (?,?,?,?,?,?,?)", new Object[]{10002,"小红","女",88,77,85,46});
database.execSQL("INSERT INTO Student VALUES (?,?,?,?,?,?,?)", new Object[]{10003,"小蓝","男",88,78,65,22});
database.execSQL("INSERT INTO Student VALUES (?,?,?,?,?,?,?)", new Object[]{10004,"小绿","男",88,77,55,55});
database.execSQL("INSERT INTO Student VALUES (?,?,?,?,?,?,?)", new Object[]{10005,"小黄","男",88,75,55,98});
database.execSQL("INSERT INTO Student VALUES (?,?,?,?,?,?,?)", new Object[]{10006,"小青","女",88,77,59,82});
String sql = "select * from Student where stuid = ?";
String[] args = {Student.stuid + ""};
Cursor cursor = helper.getReadableDatabase().rawQuery(sql, args);
while (cursor.moveToNext()) {
Student student = new Student();
student.setId(cursor.getInt(0));
}
helper.close();
}
@Override
public void onListItemClick(ListView parent,View v, int position, long id){
super.onListItemClick(parent, v, position, id);
Intent intent=new Intent();
if (0==position){
intent.setClass(list.this,MainActivity.class);
list.this.startActivity(intent);
list.this.finish();
}
}
}详细信息的第二个activity的代码
public class MainActivity extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editStuid=(EditText)findViewById(R.id.editstuid);
editName=(EditText)findViewById(R.id.editstuname);
editSex=(EditText)findViewById(R.id.editstusex);
editWuli=(EditText)findViewById(R.id.editwuli);
editShuxue=(EditText)findViewById(R.id.editshuxue);
editYingyu=(EditText)findViewById(R.id.edityingyu);
editJisuanji=(EditText)findViewById(R.id.editjisuanji);
helper = new DBHelper(this,null,null,1);
final SQLiteDatabase database = helper.getWritableDatabase();
database.execSQL("INSERT INTO Student VALUES (?,?,?,?,?,?,?)", new Object[]{131,"小红","女",88,77,85,46});
// database.execSQL("INSERT INTO Student VALUES (?,?,?,?,?,?,?)", new Object[]{10002,"小红","女",88,77,85,46});
// database.execSQL("INSERT INTO Student VALUES (?,?,?,?,?,?,?)", new Object[]{10003,"小蓝","男",88,78,65,22});
// database.execSQL("INSERT INTO Student VALUES (?,?,?,?,?,?,?)", new Object[]{10004,"小绿","男",88,77,55,55});
// database.execSQL("INSERT INTO Student VALUES (?,?,?,?,?,?,?)", new Object[]{10005,"小黄","男",88,75,55,98});
// database.execSQL("INSERT INTO Student VALUES (?,?,?,?,?,?,?)", new Object[]{10006,"小青","女",88,77,59,82});
final Cursor cursor = database.rawQuery("SELECT * FROM Student1 WHERE ID = ?",null);
while (cursor.moveToNext())
{
editStuid.setText(cursor.getString(0)+"\n");
editName.setText(cursor.getString(1)+"\n");
editSex.setText(cursor.getString(2)+"\n");
editWuli.setText(cursor.getString(3)+"\n");
editShuxue.setText(cursor.getString(4)+"\n");
editYingyu.setText(cursor.getString(5)+"\n");
editJisuanji.setText(cursor.getString(6)+"\n"); }}}
这个是我的DBHelper
public class DBHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "test1.db";
private static final int DATABASE_VERSION = 1;
public DBHelper(Context context,String name, CursorFactory factory, int version) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase database) {
database.execSQL("CREATE TABLE IF NO EXISTS Student" +
"(stuid INTEGER PRIMARY KEY, stuname VACHAR , stusex VACHAR,wuli INTEGER,shuxue INTEGER,yingyu INTEGER,jisuanji INTEGER)");
}
public void onUpgrade(SQLiteDatabase database, int oldVersion, int newVersion) {
database.execSQL("DROP TABLE IF EXISTS Student");
onCreate(database); } }
public class Student {
public static int stuid;
public String stuname;
public String stusex;
public int wuli;
public int shuxue;
public int yingyu;
public int jisuanji;
public Student() {
super();
}
public Student(int stuid,String stuname, String stusex, int wuli, int shuxue,int yingyu,int jisuanji) {
super();
this.stuid=stuid;
this.stuname = stuname;
this.stusex = stusex;
this.wuli = wuli;
this.shuxue=shuxue;
this.yingyu=yingyu;
this.jisuanji=jisuanji;
}
public String toString()
{
return "Student [id=" + stuid + ", name=" + stuname + ", sex=" + stusex +",物理成绩"+wuli+",数学成绩"+shuxue+",英语成绩"+yingyu+",计算机成绩"+jisuanji +"]";}
public Integer getId() {
return stuid;
}
public void setId(int stuid) {
this.stuid = stuid;
}
public String getName() {
return stuname;
}
public void setName(String stuname) {
this.stuname = stuname;
}
public String getSex() {
return stusex;
}
public void setSex(String stusex) {
this.stusex = stusex;
}
public int getWuli() {
return wuli;
}
public void setWuli(int wuli) {
this.wuli = wuli;
}
public int getShuxue() {
return shuxue;
}
public void setShuxue(int shuxue) {
this.shuxue = shuxue;
}
public int getYingyu() {
return yingyu;
}
public void setYingyu(int yingyu) {
this.yingyu = yingyu;
}
public int getJisuanji() {
return jisuanji;
}
public void setJisuanji(int jisuanji) {
this.jisuanji = jisuanji;
}
}
这个是常量
public final class TableContanst {
public static final String STUDENT_TABLE = "Student";
public static final class StudentColumns {
public static final String stuid = "stuid";
public static final String stuname = "name";
public static final String stusex = "age";
public static final String wuli = "sex";
public static final String shuxue = "shuxue";
public static final String yingyu = "yingyu";
public static final String jisuanji = "jisuanji"; }
}
<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TableRow>
<TextView
android:id="@+id/stuid"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="学号" />
<EditText
android:id="@+id/editstuid"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</TableRow>
<TableRow >
<TextView
android:text="姓名"
android:layout_height="wrap_content"
android:textSize="20dip"
android:layout_width="fill_parent"
android:id="@+id/stuname"
/>
<EditText
android:id="@+id/editstuname"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</TableRow>
<TableRow >
<TextView
android:id="@+id/stusex"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="性别" />
<EditText
android:id="@+id/editstusex"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</TableRow>
<TableRow >
<TextView
android:id="@+id/wuli"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="物理成绩" />
<EditText
android:id="@+id/editwuli"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</TableRow>
<TableRow >
<TextView
android:id="@+id/yingyu"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="英语成绩"
/>
<EditText
android:id="@+id/edityingyu"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</TableRow>
<TableRow >
<TextView
android:id="@+id/shuxue"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="数学成绩"
/>
<EditText
android:id="@+id/editshuxue"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</TableRow>
<TableRow >
<TextView
android:id="@+id/jisuanji"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="计算机成绩"
/>
<EditText
android:id="@+id/editjisuanji"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</TableRow>
</TableLayout>
<?xml version="1.0" encoding="utf-8"?>
<ListView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/list01"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
</ListView>