آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

خالی بودن بخش علاقه مندی ها

129125  8 سال پیش  8 سال پیش
0 0

سلام خدمت اساتید گرامی . من برنامه ای ساختم که لیست لغاتی رو نشون می ده و کاربر با کلیک به صفحه ای میره که اطلاعات تکمیلی لغت هست و کاربر میتونه اون لغتو به لیست علاقه مندی ها اضافه کنه . مشکلم اینجاست که با این کار لغت به لیست علاقه مندی ها اضافه نمیشه .ولی با اجرای مجدد لغت به لیست اضافه شده .  باید بگم که از 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);


}

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .