I wanna set a textview as the values from SQLite when I click the ListView
Here is the code:
public class SQLiteTest2 extends Activity {
private DoDB ToDoDB;
private Cursor myCursor;
private int _id;
private ListView myListView;
public TextView textStudyUID;
protected ListAdapter adapter1;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
myListView = (ListView)findViewById(R.id.ListView);
textStudyUID = (TextView)findViewById(R.id.widget40);
ToDoDB = new DoDB(this);
myCursor = ToDoDB.select();
SimpleCursorAdapter adapter1 = new SimpleCursorAdapter(this,R.layout.list,myCursor,new String[]{DoDB._StudyUID},new int[]{R.id.listTextView1});
myListView.setAdapter(adapter1);
myListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView arg0, android.view.View arg1, int arg2, long arg3) {
myCursor.moveToPosition(arg2);
CursorAdapter adapter = (CursorAdapter) arg0.getAdapter();
Cursor myCursor = adapter.getCursor();
setContentView(R.layout.main2);
_id = myCursor.getInt(7);
textStudyUID.setText(myCursor.getString(0));
}
});
But there is still exception when I click the Item in ListView
Here is the log:
07-05 14:21:13.101: ERROR/AndroidRuntime(6006): java.lang.NullPointerException
07-05 14:21:13.101: ERROR/AndroidRuntime(6006): at irdc.sqlitetest2.SQLiteTest2$1.onItemClick(SQLiteTest2.java:60)
07-05 14:21:13.101: ERROR/AndroidRuntime(6006): at android.widget.AdapterView.performItemClick(AdapterView.java:284)
07-05 14:21:13.101: ERROR/AndroidRuntime(6006): at android.widget.ListView.performItemClick(ListView.java:3285)
07-05 14:21:13.101: ERROR/AndroidRuntime(6006): at android.widget.AbsListView$PerformClick.run(AbsListView.java:1640)
07-05 14:21:13.101: ERROR/AndroidRuntime(6006): at android.os.Handler.handleCallback(Handler.java:587)
07-05 14:21:13.101: ERROR/AndroidRuntime(6006): at android.os.Handler.dispatchMessage(Handler.java:92)
07-05 14:21:13.101: ERROR/AndroidRuntime(6006): at android.os.Looper.loop(Looper.java:123)
07-05 14:21:13.101: ERROR/AndroidRuntime(6006): at android.app.ActivityThread.main(ActivityThread.java:4363)
07-05 14:21:13.101: ERROR/AndroidRuntime(6006): at java.lang.reflect.Method.invokeNative(Native Method)
07-05 14:21:13.101: ERROR/AndroidRuntime(6006): at java.lang.reflect.Method.invoke(Method.java:521)
07-05 14:21:13.101: ERROR/AndroidRuntime(6006): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
07-05 14:21:13.101: ERROR/AndroidRuntime(6006): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
07-05 14:21:13.101: ERROR/AndroidRuntime(6006): at dalvik.system.NativeStart.main(Native Method)
07-05 14:26:13.862: ERROR/gralloc(58): [unregister] handle 0x520670 still locked (state=40000001)