بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
خالی بودن بخش علاقه مندی ها
سلام خدمت اساتید گرامی . من برنامه ای ساختم که لیست لغاتی رو نشون می ده و کاربر با کلیک به صفحه ای میره که اطلاعات تکمیلی لغت هست و کاربر میتونه اون لغتو به لیست علاقه مندی ها اضافه کنه . مشکلم اینجاست که با این کار لغت به لیست علاقه مندی ها اضافه نمیشه .ولی با اجرای مجدد لغت به لیست اضافه شده . باید بگم که از recycler view , adapter , page fragment استفاده کردم .
لطفا هر بخشی که نیاز به کدش دارید بگید تا بذارم . ممنون
+1
0
درود بر شما کد اضافه کردن به علاقه مندی رو بزارین و اینکه این کد رو تو onCLick علاقه مندی ها استفاده کردین دیگه؟ (8 سال پیش)
0
0
چشم حتما . توی بخش صفحه داخلی سه تا متد نوشتم . متد اول که مربوط به وضعیت علاقه مندیه . متد دوم توی دیتابیس علاقه مندیو 1 میکنه و متد سوم علاقه مندی و صفر میکنه . بعدش اومدم یه متد on click نوشتم که هر کدوم از این متدا رو فراخوانی می کنه (8 سال پیش)
برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال
129125
8 سال پیش
0
0
چشم حتما . توی بخش صفحه داخلی سه تا متد نوشتم . متد اول که مربوط به وضعیت علاقه مندیه . متد دوم توی دیتابیس علاقه مندیو 1 میکنه و متد سوم علاقه مندی و صفر میکنه . بعدش اومدم یه متد on click نوشتم که هر کدوم از این متدا رو فراخوانی می کنه.
selectDb();
if(selectFavoriteState()){
favorite.setImageResource(R.drawable.ic_favorite_like);
}else {
favorite.setImageResource(R.drawable.ic_favorite_maylike);
}
favorite.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (selectFavoriteState()){
favorite.setImageResource(R.drawable.ic_favorite_maylike);
updateUnfavorited();
}else {
favorite.setImageResource(R.drawable.ic_favorite_like);
updateFavorited();
}
private void selectDb(){
destpath = Environment.getExternalStorageDirectory().getAbsolutePath() + "/ielts/";
database = SQLiteDatabase.openOrCreateDatabase(destpath + "/md_book.db", null);
}
private boolean selectFavoriteState(){
@SuppressLint("Recycle") Cursor cursor = database.rawQuery("SELECT * FROM main WHERE id = " + id, null);
while (cursor.moveToNext()){
favoriteState = cursor.getString(cursor.getColumnIndex("fav"));
}
return favoriteState.equals("1");
}
private void updateFavorited(){
database.execSQL( "UPDATE main SET fav = 1 WHERE id = " + id);
}
private void updateUnfavorited(){
database.execSQL( "UPDATE main SET fav = 0 WHERE id = " + id);
}
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .