Cara Menampilkan Gambar dari Byte Buffer/Int8List dengan Flutter |
Di Flutter, kalian dapat menampilkan gambar dari Byte Int8List dengan menggunakan konstruktor Image.memory seperti:
Image.memory(Uint8List.fromList(myBytes));
Jika yang kalian miliki adalah Buffer Byte, gunakan ini:
Image.memory(Uint8List.fromList(myBuffer.asInt8List()));
Berikut ini Source Code nya:
import 'package:flutter/material.dart';
import 'dart:typed_data';
import 'package:flutter/services.dart';
void main() async {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
theme: ThemeData(
primarySwatch: Colors.pink,
),
home: const HomeScreen(),
);
}
}
class HomeScreen extends StatefulWidget {
const HomeScreen({super.key});
@override
State createState() => _HomeScreenState();
}
class _HomeScreenState extends State {
Int8List? bytes;
void getBytes(imageUrl) async {
final ByteData data = await NetworkAssetBundle(Uri.parse(imageUrl)).load(imageUrl);
setState(() {
bytes = data.buffer.asInt8List();
});
}
@override
void initState() {
getBytes('https://shorturl.at/HF5yI');
super.initState();
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: const Text('Image Bytes'),
centerTitle: true,
),
body: Center(
child: bytes == null
? const CircularProgressIndicator()
: Image.memory(
Uint8List.fromList(bytes!),
width: MediaQuery.sizeOf(context).width,
height: 260,
fit: BoxFit.cover,
)
),
);
}
}
Untuk Output-nya nanti seperti ini:
Gambar Hasil |
Support Blog Rivaldi 48 agar terus bisa membagikan artikel-artikel yang bermanfaat dengan cara klik link Sociabuzz dibawah ini :https://sociabuzz.com/azharrvldi_/donate (bisa pakai GoPay, OVO, DANA, Bank Transfer)
Demikian informasi yang saya bagikan untuk kalian. Jangan lupa bagikan artikel ini ke teman-teman kalian agar ikut membaca Cara Menampilkan Gambar dari Byte Buffer/Int8List dengan Flutter ini. Subscribe juga blog Rivaldi 48 ini agar kalian mendapatkan notifikasi saat Admin update artikel terbaru. Semoga kalian lebih nyaman dan mudah dalam mengakses Blog Rivaldi 48 dimanapun kalian berada. Terima Kasih. Follow Instagram Admin @azhardvls_
0 Comments
Post a Comment
Silahkan tinggalkan komentar jika Anda punya saran, kritik, atau pertanyaan seputar topik pembahasan. Gunakan bahasa yang bijak dan santun. Terima Kasih.