اذهب إلى المحتوى

السؤال

نشر

السلام عليكم ورحمة الله وبركاته

تحيه طيبه للجميع

وكل عام والجميع بالف خير بمناسبة عيد الاضحى المبارك 

 

لدي استفسار لو تكرمتو / انا اعمل على listview  من خلالها اقوم بعرض بيانات محدده من قاعدة البيانات mysql  من خلال شرط محدد 

القائمة هذا تعرض لدي اقسام التطبيق بحيث مثلا لو تحقق شرط where اعرض الاقسام الموجوده حسب رقم id الذي كان في الجمله الشرطيه 

مثال على ذلك :

يقوم المستخدم بعملية الانتقال من الصفحه الاولى الى الصفحه الثانية وهو يحمل لديه رقم معرف منفرد مثلا id=13 

الان في الصفحه الثانيه سوف يشاهد المستخدم كل الاقسام المرتبطه بمعرفة id  هذا  ولتكن كالتالي:

قسم الكتابه 

قسم المعارف

قسم الحكايات

قسم القصص 

قسم الاحاديث 

 

طبعا لو اختار المستخدم على سبيل المثال قسم محدد ليكن مثلا قسم القصص سوف ينتقل الى صفحه مختلفه من خلالها سوف يشاهد list view يعرض كل القصص الموجوده.

 

ما احاول معرفة طريقة عمله الان كيف يمكن وضع خيار في اول القائمة بحيث لو المستخدم اختار هذا الخيار سوف ينتقل الى صفحه التاليه ولكن سوف يشاهد محتوى كل الاقسام دفعه واحده كالتالي:

 

كل الاقسام

قسم الكتابه 

قسم المعارف

قسم الحكايات

قسم القصص 

قسم الاحاديث 

 

انا اجلب جميع البيانات من خلال الكود التالي:

  Future<List<Category>> Fetch() async {
    apiURL = 'https://****************egory.php?Id_gorys=' + widget.IDgerys.toString();
    print(apiURL);
    var response = await http.post(Uri.parse(apiURL));


    if (response.statusCode == 200) {
      final items = json.decode(response.body).cast<Map<String, dynamic>>();

      List<Category> listOfFruits = items.map<Category>((json) {
        return Category.fromJson(json);
      }).toList();

      return listOfFruits;
    } else {
    
      throw Exception('Failed to load data from Server.');
    }
  }

 

واعرض البيانات كالتالي:

 

  child: FutureBuilder<List<Category>>(
                future: Fetch(),
                builder: (context, snapshot) {
                  if (snapshot.hasData) {

                  Padding(
                      padding: const EdgeInsets.all(5.0),
                      child: Card(
                        child: ListView.separated(
                            separatorBuilder: (BuildContext context, int index) => Divider(height: 1),
                            itemCount: Users.length,
                            itemBuilder: (BuildContext context, int index) {
                              return Container(
                                  child: SingleChildScrollView(
                                      child: Column(
                                          crossAxisAlignment:
                                          CrossAxisAlignment.stretch,
                                          children: <Widget>[
                                            GestureDetector(
                                                onTap: () => {
                                                  getItemAndNavigate(

                                                      Users[index].id,

                                                      context),
                                                },
                                                child: Column(


                                                  children: <Widget>[
                                                    Row(children: [
                                                      Container(


                                                        child: Flexible(

                                                          child: Column(

                                                            children: <Widget>[

                                                              SizedBox(
                                                                height: 60.0,
                                                                child: ListTile(

                                                                

                                                                    title: Text(Users[
                                                                    index] .Name)),

                                                                  
                                                              ),






                                                            ],
                                                          ),
                                                        ),

                                                      ),
                                                    ],

                                                    ),

                                         
                                                  ],

                                                )
                                            ),

                                   
                                          ] )

                                  ));

                            }),

                      ),

 

 

ياليت اذا احد لديه فكره عن طريقة عمل ذلك يساعدنا 

شكرا لكم

Recommended Posts

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...