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

عرض كل الاسطر في listview في flutter

Flutter Dev

السؤال

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

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

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

 

لدي استفسار لو تكرمتو / انا اعمل على 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

  • 0

يجب إرجاع جميع الأقسام بما فيها محتواها و من ثم عرضها في listView و لكن هذا سيسبب عندك تكدس المحتوى في الواجهة.

هل يمكنك إرفاق كود PHP الذي يقوم بإرجاع الأقسام و بيانات كل قسم؟

رابط هذا التعليق
شارك على الشبكات الإجتماعية

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

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

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

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...