2016-02-15 1 views
0

Salut J'ai créé une table pour insérer l'enregistrement, c'est-à-dire le nom, le message et l'heure. J'ai inséré avec succès, mais comment récupérer les données insérées à afficher dans une autre activité. Voici le code.Comment récupérer les données de l'enregistrement inséré à afficher dans une autre activité android?

//this i have done in Activity A: 
    ContentValues userValues = new ContentValues(); 
      //name of customer 
      userValues.put("from_user",   Application.returnEmptyStringIfNull(userName)); 
      userValues.put(Constants.LAST_MSG, msgBody); 
      userValues.put(Constants.CHAT_TIME, msgTime); 
      if(AAEDatabaseHelper.checkIDStatus(msgTo,   Constants.TABLE_LIVE_CHAT, Constants.CUSTOEMR_ID)){ 
       String whereClause = Constants.CUSTOEMR_ID + "='" + msgTo 
         + "'"; 
       AAEDatabaseHelper.updateValues(Constants.TABLE_LIVE_CHAT, 
         userValues, whereClause); 
      } 
      else { 
       userValues.put(Constants.CUSTOEMR_ID, msgTo); 
       AAEDatabaseHelper.insertValues(Constants.TABLE_LIVE_CHAT, 
         userValues); 
      } 

AAEDatabaseHelper:

private static final String TEXT_NOT_NULL = " text not null ", 
     TEXT = " text , ", TEXT_PRIMARY_KEY = " text primary key", 
     CREATE_TABLE_STRING = "create table if not exists "; 

private static final String CREATE_TABLE_LIVE_CHATS= CREATE_TABLE_STRING 
     + Constants.TABLE_LIVE_CHAT + "(" + Constants.CUSTOEMR_ID + TEXT_PRIMARY_KEY + " , " + CHAT_COLUMN_FROM_USER_NAME 
     + TEXT + Constants.CHAT_TIME + TEXT + Constants.LAST_MSG +" text) "; 


    public static boolean checkIDStatus(String id, String tableName,String columnName) { 
    LogMessage.d("TABLE_NAME", tableName); 
    Cursor cursor = null; 
    cursor = dbHelper.query(tableName, null, columnName + "=?", 
      new String[] { id }, null, null, null); 
    boolean status = false; 
    try { 
     if (cursor != null) { 
      if (cursor.getCount() > 0) 
       status = true; 
      cursor.close(); 
     } 
    } catch (Exception e) { 
     LogMessage.e(Constants.TAG, e); 
    } 
    return status; 
} 

Dans une autre activité B: // comment récupérer données insérées pour afficher dans le texte. les données insérées sont nom d'utilisateur, message, time.customerid.

Répondre

0

La façon dont vous utilisez contentValue pour stocker ces données. De la même manière, vous pouvez récupérer les données dans le curseur et les stocker dans contectValue; L'exemple suivant montre comment récupérer des données, puis les stocker dans contentValues.

Cursor c = db.query(tableName, 
      tableColumn, 
      where, 
      whereArgs, 
      groupBy, 
      having, 
      orderBy); 

ArrayList<ContentValues> retVal = new ArrayList<ContentValues>(); 
ContentValues map; 
if(c.moveToFirst()) {  
    do { 
     map = new ContentValues(); 
     DatabaseUtils.cursorRowToContentValues(c, map);     
     retVal.add(map); 
    } while(c.moveToNext()); 
} 

c.close();