نمایش نتایج 1 تا 2 از 2

نام تاپیک: خواندن اطلاعات از دیتابیس و نمایش در ExpandableListView

  1. #1
    کاربر دائمی آواتار ghasem110deh
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    تهران
    پست
    1,148

    Question خواندن اطلاعات از دیتابیس و نمایش در ExpandableListView

    سلام به همه :-)
    دوستان من دو تا جدول دارم (روز هفته - فعالیت روزانه)
    حالا با توجه به هر کار (که یک یا چند روز رو برای خودش تعریف کرده) باید توی لیست دیتیل (زیر فهرست روز هفته) فعالیت های همون روز نشون داده بشه ولی تمام فعالیت ها نشون داده میشه !

    این کد Adapter :

    package ir.rahgoshafan.mybody.adapter;
    import android.content.Context;
    import android.view.LayoutInflater;
    import android.view.View;
    import android.view.ViewGroup;
    import android.widget.BaseExpandableListAdapter;
    import android.widget.TextView;

    import java.util.List;

    import ir.rahgoshafan.mybody.R;
    import ir.rahgoshafan.mybody.model.Week;
    import ir.rahgoshafan.mybody.model.Workout;

    public class Expandable extends BaseExpandableListAdapter {
    private Context context;
    private List<Week> week;
    private List<Workout> workout;

    public Expandable(Context context, List<Week> week, List<Workout> workout) {
    this.context = context;
    this.week = week;
    this.workout = workout;
    }

    @Override
    public int getGroupCount() {
    return week.size();
    }

    @Override
    public int getChildrenCount(int groupPosition) {
    return workout.size();
    }

    @Override
    public Object getGroup(int groupPosition) {
    return week.get(groupPosition);
    }

    @Override
    public Object getChild(int groupPosition, int childPosition) {
    return workout.get(childPosition);
    }

    @Override
    public long getGroupId(int groupPosition) {
    return groupPosition;
    }

    @Override
    public long getChildId(int groupPosition, int childPosition) {
    return childPosition;
    }

    @Override
    public boolean hasStableIds() {
    return true;
    }

    @Override
    public View getGroupView(int groupPosition, boolean isExpanded, View convertView, ViewGroup parent) {
    Week weekName = (Week) getGroup(groupPosition);
    if (convertView == null) {
    LayoutInflater layoutInflater = (LayoutInflater) this.context.getSystemService(Context.LAYOUT_INFLA TER_SERVICE);
    convertView = layoutInflater.inflate(R.layout.expandable_list_gr oup, null);
    }
    TextView weekDay = (TextView) convertView.findViewById(R.id.listTitle);
    weekDay.setText(weekName.getDayName());
    return convertView;
    }

    @Override
    public View getChildView(int groupPosition, int childPosition, boolean isLastChild, View convertView, ViewGroup parent) {
    Workout workName = (Workout) getChild(groupPosition, childPosition);
    if (convertView == null) {
    LayoutInflater layoutInflater = (LayoutInflater) this.context.getSystemService(Context.LAYOUT_INFLA TER_SERVICE);
    convertView = layoutInflater.inflate(R.layout.expandable_list_it em, null);
    }
    TextView workoutName = (TextView) convertView.findViewById(R.id.expanded_ListItem_ex ercise);
    workoutName.setText(workName.getWorkout());
    TextView workoutNo = (TextView) convertView.findViewById(R.id.expanded_ListItem_no );
    workoutNo.setText(String.valueOf(workName.getWorko utSet()));
    return convertView;
    }

    @Override
    public boolean isChildSelectable(int groupPosition, int childPosition) {
    return true;
    }
    }


    این هم کدهای مربوط به اکتیویتی :

    ExpandableListView expandableListView;
    Expandable expandableListAdapter;
    List<Week> expandableListTitle;
    List<Workout> expandableListDetail;expandableListDetail = DB_HELPER.WORKOUT_LIST(1);
    expandableListTitle = DB_HELPER.WEEK_LIST(USER_ID);
    expandableListAdapter = new Expandable(this, expandableListTitle, expandableListDetail);
    expandableListView.setAdapter(expandableListAdapte r);


    و این هم کوئری :

    public List<Workout> WORKOUT_LIST(int id) { try {
    Workout WORKOUT_TABLE = null;
    List<Workout> WORKOUT = new ArrayList<>();
    openDatabase();
    db.beginTransaction();
    Cursor WORKOUT_CURSOR = db.rawQuery("select * from tblWorkout where userDay =" + id, null);
    db.setTransactionSuccessful();
    WORKOUT_CURSOR.moveToFirst();
    while (!WORKOUT_CURSOR.isAfterLast()) {
    WORKOUT_TABLE = new Workout(WORKOUT_CURSOR.getInt(0), WORKOUT_CURSOR.getInt(1), WORKOUT_CURSOR.getString(2), WORKOUT_CURSOR.getInt(3),
    WORKOUT_CURSOR.getInt(4), WORKOUT_CURSOR.getString(5));
    WORKOUT.add(WORKOUT_TABLE);
    WORKOUT_CURSOR.moveToNext();
    }
    WORKOUT_CURSOR.close();
    return WORKOUT;
    } catch (Exception e) {
    Log.i(LOG_TAG, "VIEW_WORKOUT_LIST Error :" + e.toString());
    return null;
    } finally {
    db.endTransaction();
    closeDatabase();
    }
    }


    توی عکس ضمیمه مشخصه ... یک فعالیت تعریف شده که فقط باید در روز شنبه نمایش داده بشه ولی توی دوشنبه هم هست !
    عکس های ضمیمه عکس های ضمیمه

  2. #2
    کاربر دائمی آواتار ghasem110deh
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    تهران
    پست
    1,148

    نقل قول: خواندن اطلاعات از دیتابیس و نمایش در ExpandableListView

    دوستان کسی نمی دونه مشکل از کجاس !؟

تاپیک های مشابه

  1. خواندن اطلاعات از دیتابیس و نمایش در toast
    نوشته شده توسط ashkan_gorg در بخش Android Studio
    پاسخ: 5
    آخرین پست: یک شنبه 05 مرداد 1393, 17:46 عصر
  2. سوال: خواندن اطلاعات از دیتابیس و مشکل در نمایش در select
    نوشته شده توسط hamidhassas در بخش PHP
    پاسخ: 2
    آخرین پست: یک شنبه 04 خرداد 1393, 14:58 عصر
  3. طریقه خواندن داده از دیتابیس و نمایش در کمبوباکس
    نوشته شده توسط eletcomp در بخش C#‎‎
    پاسخ: 15
    آخرین پست: دوشنبه 01 اردیبهشت 1393, 10:12 صبح
  4. خواندن اعداد از ديتابيس و نمايش در MaskEdit
    نوشته شده توسط kamand314 در بخش مباحث عمومی دلفی و پاسکال
    پاسخ: 3
    آخرین پست: یک شنبه 13 اردیبهشت 1388, 11:47 صبح
  5. پاسخ: 7
    آخرین پست: شنبه 01 اردیبهشت 1386, 20:50 عصر

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •