大神求解救,总是进程终止,付源码
程序代码:
package com.ascleft.service; import java.util.ArrayList; import java.util.List; import android.content.Context; import com.ascleft.domain.*; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; public class NoteDAO { private DBOpenHelper helper;// 创建DBOpenHelper对象 private SQLiteDatabase db;// 创建SQLiteDatabase对象 public NoteDAO(Context context)// 定义构造函数 { helper = new DBOpenHelper(context);// 初始化DBOpenHelper对象 } /** * 添加便签信息 * * @param tb_flag */ public void addnote(Note note) { db = helper.getWritableDatabase();// 初始化SQLiteDatabase对象 db.execSQL("insert into note (mynotes) values (?)", new Object[] { note.getNotes() });// 执行添加便签信息操作 } // /** // * 更新便签信息 // * // * @param tb_flag // */ // public void update(Note note) { // db = helper.getWritableDatabase();// 初始化SQLiteDatabase对象 // db.execSQL("update note set flag = ? where _id = ?", new Object[] { // tb_flag.getFlag(), tb_flag.getid() });// 执行修改便签信息操作 // } /** * 查找便签信息 * * @param id * @return */ public Note find(String notes ) { db = helper.getWritableDatabase();// 初始化SQLiteDatabase对象 Cursor cursor = db.rawQuery( "select mynotes from note where mynotes = ?", new String[] { String.valueOf(notes) });// 根据编号查找便签信息,并存储到Cursor类中 if (cursor.moveToNext())// 遍历查找到的便签信息 { // 将遍历到的便签信息存储到Tb_flag类中 return new Note(cursor.getString(cursor.getColumnIndex("mynotes"))); } return null;// 如果没有信息,则返回null } /** * 获取便签信息 * * @param start * 起始位置 * @param count * 每页显示数量 * @return */ public List<Note> getScrollData(int start, int count) { List<Note> listNote = new ArrayList<Note>();// 创建集合对象 db = helper.getWritableDatabase();// 初始化SQLiteDatabase对象 // 获取所有便签信息 Cursor cursor = db.rawQuery("select note from mynote",new String[] { String.valueOf(start), String.valueOf(count) }); while (cursor.moveToNext())// 遍历所有的便签信息 { // 将遍历到的便签信息添加到集合中 listNote.add(new Note(cursor.getString(cursor.getColumnIndex("note")))); } return listNote;// 返回集合 } /** * 获取总记录数 * * @return */ public long getCount() { db = helper.getWritableDatabase();// 初始化SQLiteDatabase对象 Cursor cursor = db.rawQuery("select count(note) from mynote", null);// 获取便签信息的记录数 if (cursor.moveToNext())// 判断Cursor中是否有数据 { return cursor.getLong(0);// 返回总记录数 } return 0;// 如果没有数据,则返回0 } }<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas. android:id="@+id/iteminfo" android:orientation="vertical" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="5dp" android:weightSum="1"> <LinearLayout android:id="@+id/linearLayout1" android:layout_height="wrap_content" android:layout_width="match_parent" android:orientation="vertical" android:layout_weight="0.06"> <RelativeLayout android:layout_height="wrap_content" android:layout_width="match_parent"> <Button android:text="返回" android:id="@+id/show_activity_close" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:textSize="20dp" android:textColor="#8C6931" /> <Button android:text="刷新" android:id="@+id/show_activity_refresh" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:textSize="20dp" android:textColor="#8C6931" /> </RelativeLayout> </LinearLayout> <LinearLayout android:id="@+id/linearLayout2" android:layout_height="wrap_content" android:layout_width="match_parent" android:orientation="vertical" android:layout_weight="0.94"> <ListView android:id="@+id/lvinfo" android:layout_width="match_parent" android:layout_height="match_parent" android:scrollbarAlwaysDrawVerticalTrack="true" /> </LinearLayout> </LinearLayout>
package com.ascleft.activity;
import java.util.List;
import com.ascleft.domain.Note;
import com.ascleft.service.NoteDAO;
import com.example.ascleftnote.R;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.AdapterView.OnItemClickListener;
public class ShowActivity extends Activity {
Button button_show_activity_refresh,button_show_activity_close;
public static final String FLAG = "id";// 定义一个常量,用来作为请求码
ListView lvinfo;// 创建ListView对象
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.show_activity);
lvinfo = (ListView) findViewById(R.id.lvinfo);// 获取布局文件中的ListView组件
button_show_activity_refresh = (Button) findViewById(R.id.show_activity_refresh);
button_show_activity_close = (Button) findViewById(R.id.show_activity_close);
// ShowInfo(R.id.show_activity_refresh);// 默认显示支出信息
button_show_activity_close.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
finish();
}
});
button_show_activity_refresh.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
ShowInfo(R.id.show_activity_refresh);
}
});
}
private void ShowInfo(int intType) {// 用来根据传入的管理类型,显示相应的信息
String[] strInfos = null;// 定义字符串数组,用来存储收入信息
ArrayAdapter<String> arrayAdapter = null;// 创建ArrayAdapter对象
NoteDAO noteDAO = new NoteDAO(ShowActivity.this);// 创建FlagDAO对象
// 获取所有便签信息,并存储到List泛型集合中
List<Note> listNote = noteDAO.getScrollData(0,
(int) noteDAO.getCount());
int n = 0;// 定义一个开始标识
for (Note note : listNote) {// 遍历List泛型集合
// 将便签相关信息组合成一个字符串,存储到字符串数组的相应位置
strInfos[n] = note.getNotes();
n++;// 标识加1
}
// 使用字符串数组初始化ArrayAdapter对象
arrayAdapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, strInfos);
lvinfo.setAdapter(arrayAdapter);// 为ListView列表设置数据源
}
@Override
protected void onRestart() {
// TODO Auto-generated method stub
super.onRestart();// 实现基类中的方法
ShowInfo(R.id.show_activity_refresh);// 显示支出信息
}
}
import java.util.List;
import com.ascleft.domain.Note;
import com.ascleft.service.NoteDAO;
import com.example.ascleftnote.R;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.AdapterView.OnItemClickListener;
public class ShowActivity extends Activity {
Button button_show_activity_refresh,button_show_activity_close;
public static final String FLAG = "id";// 定义一个常量,用来作为请求码
ListView lvinfo;// 创建ListView对象
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.show_activity);
lvinfo = (ListView) findViewById(R.id.lvinfo);// 获取布局文件中的ListView组件
button_show_activity_refresh = (Button) findViewById(R.id.show_activity_refresh);
button_show_activity_close = (Button) findViewById(R.id.show_activity_close);
// ShowInfo(R.id.show_activity_refresh);// 默认显示支出信息
button_show_activity_close.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
finish();
}
});
button_show_activity_refresh.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
ShowInfo(R.id.show_activity_refresh);
}
});
}
private void ShowInfo(int intType) {// 用来根据传入的管理类型,显示相应的信息
String[] strInfos = null;// 定义字符串数组,用来存储收入信息
ArrayAdapter<String> arrayAdapter = null;// 创建ArrayAdapter对象
NoteDAO noteDAO = new NoteDAO(ShowActivity.this);// 创建FlagDAO对象
// 获取所有便签信息,并存储到List泛型集合中
List<Note> listNote = noteDAO.getScrollData(0,
(int) noteDAO.getCount());
int n = 0;// 定义一个开始标识
for (Note note : listNote) {// 遍历List泛型集合
// 将便签相关信息组合成一个字符串,存储到字符串数组的相应位置
strInfos[n] = note.getNotes();
n++;// 标识加1
}
// 使用字符串数组初始化ArrayAdapter对象
arrayAdapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, strInfos);
lvinfo.setAdapter(arrayAdapter);// 为ListView列表设置数据源
}
@Override
protected void onRestart() {
// TODO Auto-generated method stub
super.onRestart();// 实现基类中的方法
ShowInfo(R.id.show_activity_refresh);// 显示支出信息
}
}