-1
我想開始此活動,但我不知道爲什麼我現在不能開始! 以前, 我能夠開始活動.. 我不知道我的代碼有什麼問題,有人可以幫我嗎? 感謝您當試圖開始新的意圖時強行關閉
01-29 21:20:48.431: E/AndroidRuntime(20165): FATAL EXCEPTION: main
01-29 21:20:48.431: E/AndroidRuntime(20165): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.fuellogproject/com.example.fuellogproject.summary}: java.lang.NullPointerException
01-29 21:20:48.431: E/AndroidRuntime(20165): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2110)
01-29 21:20:48.431: E/AndroidRuntime(20165): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2135)
01-29 21:20:48.431: E/AndroidRuntime(20165): at android.app.ActivityThread.access$700(ActivityThread.java:140)
01-29 21:20:48.431: E/AndroidRuntime(20165): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1237)
01-29 21:20:48.431: E/AndroidRuntime(20165): at android.os.Handler.dispatchMessage(Handler.java:99)
01-29 21:20:48.431: E/AndroidRuntime(20165): at android.os.Looper.loop(Looper.java:137)
01-29 21:20:48.431: E/AndroidRuntime(20165): at android.app.ActivityThread.main(ActivityThread.java:4921)
01-29 21:20:48.431: E/AndroidRuntime(20165): at java.lang.reflect.Method.invokeNative(Native Method)
01-29 21:20:48.431: E/AndroidRuntime(20165): at java.lang.reflect.Method.invoke(Method.java:511)
01-29 21:20:48.431: E/AndroidRuntime(20165): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038)
01-29 21:20:48.431: E/AndroidRuntime(20165): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805)
01-29 21:20:48.431: E/AndroidRuntime(20165): at dalvik.system.NativeStart.main(Native Method)
01-29 21:20:48.431: E/AndroidRuntime(20165): Caused by: java.lang.NullPointerException
01-29 21:20:48.431: E/AndroidRuntime(20165): at com.example.fuellogproject.summary.onCreate(summary.java:107)
01-29 21:20:48.431: E/AndroidRuntime(20165): at android.app.Activity.performCreate(Activity.java:5188)
01-29 21:20:48.431: E/AndroidRuntime(20165): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)
01-29 21:20:48.431: E/AndroidRuntime(20165): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2074)
01-29 21:20:48.431: E/AndroidRuntime(20165): ... 11 more
我的代碼
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.summary);
monthDate = (EditText)findViewById(R.id.month);
avgPrice = (TextView)findViewById(R.id.resultFC);
// First we need to make contact with the database we have created using
// the DbHelper class
AndroidOpenDbHelper openHelperClass = new AndroidOpenDbHelper(this);
// Then we need to get a readable database
SQLiteDatabase sqliteDatabase = openHelperClass.getReadableDatabase();
// We need a a guy to read the database query. Cursor interface will do
// it for us
// (String table, String[] columns, String selection, String[]
// selectionArgs, String groupBy, String having, String orderBy)
Cursor cursor = sqliteDatabase.query(
AndroidOpenDbHelper.TABLE_NAME_LOG, null, null, null, null,
null, null);
// Above given query, read all the columns and fields of the table
startManagingCursor(cursor);
// Cursor object read all the fields. So we make sure to check it will
// not miss any by looping through a while loop
while (cursor.moveToNext()) {
// In one loop, cursor read one undergraduate all details
// Assume, we also need to see all the details of each and every
// undergraduate
// What we have to do is in each loop, read all the values, pass
// them to the POJO class
// and create a ArrayList of undergraduates
String id = cursor.getString(cursor
.getColumnIndex(AndroidOpenDbHelper.KEY_ROWID));
final String date = cursor.getString(cursor
.getColumnIndex(AndroidOpenDbHelper.KEY_DATE));
String price = cursor.getString(cursor
.getColumnIndex(AndroidOpenDbHelper.KEY_PRICE));
String pump = cursor.getString(cursor
.getColumnIndex(AndroidOpenDbHelper.KEY_FUEL));
String cost = cursor.getString(cursor
.getColumnIndex(AndroidOpenDbHelper.KEY_COST));
String odm = cursor.getString(cursor
.getColumnIndex(AndroidOpenDbHelper.KEY_ODM));
String preodm = cursor.getString(cursor
.getColumnIndex(AndroidOpenDbHelper.KEY_PREODM));
String fcon = cursor.getString(cursor
.getColumnIndex(AndroidOpenDbHelper.KEY_CON));
// If you don't close the database, you will get an error
sqliteDatabase.close();
Log.i("FuelLog", "dataBundle " + date);
monthDate.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// showDialog(DATE_DIALOG_ID);
DialogFragment newFragment = new DatePickerFragment();
newFragment.show(getFragmentManager(), "datePicker");
}
});
doneButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (monthDate.getText().toString().equals(date.subSequence(3,9).toString()))
{
Intent intent=new Intent(getApplicationContext(),about.class);
startActivity(intent);
Log.d("ELSEMONTHDATE","date : "+ monthDate.getText().toString());
Log.d("ELSEBUNDLEDATE","date : "+ (date.subSequence(3,9).toString()));
}
else
{
Intent intent=new Intent(getApplicationContext(),about.class);
startActivity(intent);
Log.d("ELSEMONTHDATE","date : "+ monthDate.getText().toString());
Log.d("ELSEBUNDLEDATE","date : "+ (date.subSequence(3,9).toString()));
}
}
});
}
}
是什麼線107'summary.java' – Raghunandan
我想你R電話同一類的,如果 - else條件... –
doneButton.setOnClickListener(新View.OnClickListener(){ – Chloe