Tôi đang phát triển một ứng dụng từ điển. Trong ứng dụng của tôi, tôi cho rằng người dùng muốn lưu các từ yêu thích. Tôi đã quyết định sử dụng SharedPreferences để lưu các giá trị này (Tôi biết rằng SQLite và các tệp tốt hơn nhưng tôi bị mắc kẹt với "SharedPreferences", vì vậy hãy tiếp tục với nó).Cách sử dụng SharedPreferences để lưu nhiều hơn một giá trị?
đây dưới đây là mã của tôi:
@Override
public void onClick(View v) {
SharedPreferences faves = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
{
SharedPreferences.Editor editor = faves.edit();
editor.putString("favourite", mSelectedDB + "::" + mCurrentWordId + "::" + mCurrentWord + ",");
editor.commit();
}
Log.i(CONTENT_TAG,"Favourite saved!");
Toast toast = Toast.makeText(ContentView.this, R.string.messageWordAddedToFarvourite, Toast.LENGTH_SHORT);
toast.show();
}
Vấn đề là nó không giữ lại nhiều hơn một từ yêu thích. Tôi có nghĩa là chỉ một từ yêu thích được lưu và khi một từ mới được thêm vào, từ trước đó sẽ bị xóa.
Vì vậy, làm cách nào để mã trên được chỉnh sửa để vấn đề này được giải quyết?
Các bạn có thể trợ giúp không? Cảm ơn nhiều.
Cảm ơn bạn rất nhiều.Nhưng tôi chưa hiểu những gì để lập trình làm. Đây là dạng chuỗi SharedPreferences: ' dict_name :: 149272 :: go, '. Mã của bạn nên được đặt ở đâu? –
@ user998032 Tôi đã thêm mã để giải thích cách chúng tôi có thể thêm nhiều mục yêu thích. Bạn có thể sử dụng mã như nó, nó sẽ làm việc cho bạn. –
@@ Muhammad Nabeel Arif: Cảm ơn rất nhiều, nhưng vẫn không may mắn, xin lỗi! Tôi muốn yêu thích được lưu sau onClick nhưng nhiều lỗi được tạo sau mã đã chỉnh sửa ở trên. –