صنف لبياناتك
جزء من قسم القوائم والشاشات في رحلة Flutter على Coddy. الدرس 12 من 33.
الكتاب أكثر من مجرد سلسلة نصية واحدة: له عنوان ومؤلف، وهما مرتبطان ببعضهما. تصف class نوعًا جديدًا من القيم يتكوّن من أجزاء مسماة، تُسمى حقولًا:
class Book {
final String title;
final String author;
Book(this.title, this.author);
}السطر Book(this.title, this.author); هو المُنشئ: فهو ينشئ كتابًا جديدًا ويملأ حقوله بهذا الترتيب. Book('Dune', 'Frank Herbert') هو كتاب عنوانه Dune.
اقرأ حقلًا باستخدام نقطة: book.title، book.author. قائمة الكتب نوعها List<Book>، بالطريقة نفسها التي يكون بها نوع قائمة السلاسل النصية List<String>.
اكتب الصنف بمفرده، خارج أصناف عناصر الواجهة، وعادةً في أسفل الملف.
التحدي
متوسطيحتوي الصنف Book على عنوان فقط. أضف إليه مؤلفًا:
- أضف حقلًا
final String author;واملأه في المُنشئ، بعد العنوان - عيّن لكل كتاب مؤلفه:
Frank HerbertوJane AustenوJames Joyce - اعرض المؤلف بوصفه
subtitleلكل عنصر
جرّب بنفسك
import 'package:flutter/material.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
final List<Book> books = [
Book('Dune'),
Book('Emma'),
Book('Ulysses'),
];
return MaterialApp(
debugShowCheckedModeBanner: false,
home: Scaffold(
appBar: AppBar(title: const Text('Books')),
body: ListView(
children: [
for (Book book in books)
ListTile(
title: Text(book.title),
),
],
),
),
);
}
}
class Book {
final String title;
Book(this.title);
}
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس القوائم والشاشات
1قوائم قابلة للتمرير
قائمة قابلة للتمريرعناصر القائمةالبداية والنهايةاضغط على عنصر قائمةفواصل بين الصفوف6علامات التبويب والأدراج والتمرير بالسحب
علامات التبويب مع شريط تنقلأيقونات ممتلئة لعلامة التبويب المفتوحةدرج جانبياسحب للحذفالتراجع عن السحبتدرّب بنفسك: مترجم Flutter عبر الإنترنت