2016-07-04 10 views
-4

人の詳細を保存、表示、編集、削除するだけのアプリがあります。私はまだアンドロイドに新しいです、私のアプリは、データを表示し、削除することができます。しかし、編集は機能していません。私はコードを乱してしまいました。私が編集すると、Personsの名前はホームページでのみ変更され、特定のアイテムをクリックすると、PersonDetailsという新しいActivityが開きます。ここでPersonの詳細が変更されているはずです。彼らは前と同じままです。誰かが私を助けてくれますか?私はここに私のリポジトリがあなたのDBAdapter.javahttps://github.com/fayazara/Accounts私のアプリケーションでSQLiteデータベースを編集できません

+0

してくださいむしろここで間違ったものを共有するあなたの完全なコードにリンクするより – 0xDEADC0DE

答えて

1

だ2日間

のためにこのことについて私の脳を傷つけてきた:

置き換えます

//Update a person 
public void updateContact(long rowId, Person p){ 
    ContentValues args = new ContentValues(); 
    args.put(KEY_NAME, p.getName()); 
    args.put(KEY_PHONE, p.getPhone()); 
    args.put(KEY_ACCOUNT, p.getAccount()); 
    args.put(KEY_BANK, p.getBank()); 
    args.put(KEY_BANK_IFSC, p.getBankIfsc()); 
} 

をして:

//Update a person 
    public boolean updateContact(long rowId, Person p){ 
     ContentValues args = new ContentValues(); 
     args.put(KEY_NAME, p.getName()); 
     args.put(KEY_PHONE, p.getPhone()); 
     args.put(KEY_ACCOUNT, p.getAccount()); 
     args.put(KEY_BANK, p.getBank()); 
     args.put(KEY_BANK_IFSC, p.getBankIfsc()); 
     String where = KEY_NAME + "= '" + p.getName() + "'"; 
     return db.update(DATABASE_TABLE, args, where, null) != 0; 
    } 
+0

ありがとう、それは迅速な返信でした!出来た。私はwhere句を逃したと信じています。なぜあなたはブール値を返しているのか教えてください。 – Fayaz

+0

助けてくれてうれしいです。これを確認してください:https://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.html#update(java.lang.String,%20android.content.ContentValues,%20java.lang.String,%20java。 lang.String []) –

関連する問題