Prefer ListView.builder for PictureGrid and enable gaplessPlayback to reduce asset flicker (#308)

diff --git a/lib/studies/reply/mail_card_preview.dart b/lib/studies/reply/mail_card_preview.dart
index e4f5183..77d25dd 100644
--- a/lib/studies/reply/mail_card_preview.dart
+++ b/lib/studies/reply/mail_card_preview.dart
@@ -272,18 +272,19 @@
   Widget build(BuildContext context) {
     return SizedBox(
       height: 96,
-      child: ListView(
+      child: ListView.builder(
+        itemCount: 4,
         scrollDirection: Axis.horizontal,
-        children: [
-          for (var index = 0; index < 4; index++)
-            Padding(
-              padding: const EdgeInsetsDirectional.only(end: 4),
-              child: Image.asset(
-                'reply/attachments/paris_${index + 1}.jpg',
-                package: 'flutter_gallery_assets',
-              ),
+        itemBuilder: (context, index) {
+          return Padding(
+            padding: const EdgeInsetsDirectional.only(end: 4),
+            child: Image.asset(
+              'reply/attachments/paris_${index + 1}.jpg',
+              gaplessPlayback: true,
+              package: 'flutter_gallery_assets',
             ),
-        ],
+          );
+        },
       ),
     );
   }
diff --git a/lib/studies/reply/mail_view_page.dart b/lib/studies/reply/mail_view_page.dart
index 47f0663..c225b6e 100644
--- a/lib/studies/reply/mail_view_page.dart
+++ b/lib/studies/reply/mail_view_page.dart
@@ -149,6 +149,7 @@
       itemBuilder: (context, index) {
         return Image.asset(
           'reply/attachments/paris_${index + 1}.jpg',
+          gaplessPlayback: true,
           package: 'flutter_gallery_assets',
           fit: BoxFit.fill,
         );
diff --git a/lib/studies/reply/profile_avatar.dart b/lib/studies/reply/profile_avatar.dart
index 0e52f02..c3bbbbd 100644
--- a/lib/studies/reply/profile_avatar.dart
+++ b/lib/studies/reply/profile_avatar.dart
@@ -19,6 +19,7 @@
         child: ClipOval(
           child: Image.asset(
             avatar,
+            gaplessPlayback: true,
             package: 'flutter_gallery_assets',
             height: 42,
             width: 42,