前提
image_pickerを用いて画像をカメラロールから取得し表示させようとしています。
実現したいこと
IconButtonを押すとカメラロールへ遷移し、画像を選択することはできるのですが、Scaffold上に画像を表示することができません。
発生している問題・エラーメッセージ
エラー等は発生していません。
該当のソースコード
Dart
1import 'package:flutter/material.dart'; 2import 'dart:io'; 3import 'package:image_picker/image_picker.dart'; 4 5class Search extends StatefulWidget { 6 const Search({Key? key}); 7 8 State<Search> createState() => _Search(); 9} 10 11class _Search extends State<Search> { 12 13 Widget build(BuildContext context) { 14 final double deviceHeight = MediaQuery.of(context).size.height; //デバイスの高さ 15 final double deviceWdth = MediaQuery.of(context).size.width; //デバイスの幅 16 File? _image; 17 18 final picker = ImagePicker(); 19 Future _getImage() async { 20 final pickedFile = await picker.pickImage(source: ImageSource.gallery); 21 setState(() { 22 if (pickedFile != null) { 23 _image = File(pickedFile.path); 24 } 25 }); 26 } 27 28 return Scaffold( 29 body: Column( 30 children: [ 31 _image == null 32 ? Align( 33 alignment: Alignment.centerLeft, 34 child: Row( 35 children: [ 36 SizedBox( 37 width: deviceWdth * 0.05, 38 ), 39 IconButton( 40 onPressed: _getImage, 41 icon: Icon(photo), 42 color: Color.fromARGB(255, 173, 173, 173), 43 iconSize: deviceWdth * 0.08, 44 splashRadius: deviceWdth * 0.07, 45 splashColor: Colors.transparent, 46 ), 47 ], 48 ), 49 ) 50 : Container( 51 height: deviceHeight * 0.2, 52 width: deviceWdth, 53 child: Image.file(_image!, fit: BoxFit.cover), 54 ), 55 ], 56 ), 57 ); 58 } 59} 60
試したこと
いろいろなサイトを練り歩いて試してみましたが表示させることができませんでした。
補足情報(FW/ツールのバージョンなど)
[✓] Flutter (Channel stable, 3.3.10, on macOS 13.1 22C65 darwin-arm, locale ja-JP)
[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 14.1)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2021.3)
[✓] VS Code (version 1.73.0)
[✓] Connected device (3 available)
[✓] HTTP Host Availability

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。