J'ai des problèmes avec la création de la table sql. J'ai un listview qui devrait stocker des titres et une autre activité qui saisit l'information et l'envoie onActivityResult.Aide de la base de données SQLite
C'est la méthode createFavorite dans la classe MyDatabaseHelper.
public long createFavorite(String title, int lon , int lat) {
ContentValues initialValues = new ContentValues();
initialValues.put(KEY_TITLE, title);
initialValues.put(KEY_LAT, lat);
initialValues.put(KEY_LON, lon);
return mDb.insert(DATABASE_TABLE, null, initialValues);
}
et c'est là que je prends l'information et la fais passer comme un paquet.
public class SaveFav extends Activity {
EditText textBox;
Button saveAs;
LocationListener loc;
LocationManager locMng;
MyLocationOverlay myLoc;
GeoPoint p = null;
String s;
int lat = 0;
int lon = 0;
public void onCreate(Bundle b) {
super.onCreate(b);
setContentView(R.layout.savelocation);
textBox = (EditText) findViewById(R.id.edittext);
saveAs = (Button) findViewById(R.id.save);
loc = new MyLocationListener();
locMng = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
locMng.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, loc);
saveAs.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if (p == null) {
Toast.makeText(getBaseContext(), "Can not get GPS Signal",
Toast.LENGTH_LONG).show();
} else {
Bundle b = new Bundle();
b.putString(MyDatabaseHelper.KEY_TITLE, textBox.getText().toString());
b.putInt(MyDatabaseHelper.KEY_LAT, p.getLatitudeE6());
b.putInt(MyDatabaseHelper.KEY_LON, p.getLongitudeE6());
Intent i = new Intent();
i.putExtras(b);
setResult(RESULT_OK, i);
finish();
}
}
});
}
puis j'attrape le résultat dans une autre activité.
protected void onActivityResult(int requestCode, int resultCode,
Intent intent) {
super.onActivityResult(requestCode, resultCode, intent);
Bundle b = intent.getExtras();
switch(requestCode){
case ACTIVITY_CREATE:
String title = b.getString(MyDatabaseHelper.KEY_TITLE);
int lat = b.getInt(MyDatabaseHelper.KEY_LAT);
int lon = b.getInt(MyDatabaseHelper.KEY_LON);
Toast.makeText(getBaseContext(), "" + lat , Toast.LENGTH_LONG).show();
//mDbHelper.createFavorite(title,lat ,lon);
break;
}
Ceci est mon code d'erreur.
05-17 19:42:46.027: ERROR/AndroidRuntime(398): java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=0, result=-1, data=Intent { (has extras) }} to activity {com.state.park/com.state.park.Favorites}: java.lang.NullPointerException
05-17 19:42:46.027: ERROR/AndroidRuntime(398): at com.state.park.Favorites.onActivityResult(Favorites.java:150)
Salut Cory quel est le code de votre classe Favoris Ligne 150 ??? – Jorgesys