【发布时间】:2018-10-19 02:21:23
【问题描述】:
我是一名初级(或不到 1 个月的学习者)飞镖/颤振开发人员。 我尝试创建一个示例配置文件应用程序 - 在主屏幕上显示用户的个人资料图像。 - 用户可以使用应用内的相机拍照或从相册中选择并显示为个人资料图片。
我已经创建了 2 个主视图控制器。
-
main.dart
void main() { runApp(new MaterialApp( home: new MyApp(), routes: <String, WidgetBuilder>{ '/screen1': (BuildContext context) => new MyApp(), '/screen3': (BuildContext context) => new UploadAvatarButton() }, )); } class MyApp extends StatefulWidget { final String _images = ""; MyApp(String _images, {Key key}) : super(key: key); @override State<StatefulWidget> createState() { return new MyHomePage(); } } class MyHomePage extends State<MyApp> { @override Widget build(BuildContext context) { Widget myPhoto = new Container( //Attribute child: new FlatButton( child: new Container( decoration: new BoxDecoration( shape: BoxShape.circle, image: new DecorationImage( fit: BoxFit.cover, image: new AssetImage('images/sample.jpg')), ), ), onPressed: _showPersBottomSheetCallBack, ), ); return new MaterialApp( home: new Scaffold( //Header body: new Center( child: new Column( crossAxisAlignment: CrossAxisAlignment.center, children: [ new Container(child: myPhoto),
和2.cameraView.dart
class UploadAvatarButton extends StatefulWidget {
@override
State<StatefulWidget> createState() {
return new MakeUploadAvatarButtonState();
}
class MakeUploadAvatarButtonState extends State<UploadAvatarButton> {
File _image;
Future getImage() async {
var image = await ImagePicker.pickImage(source: ImageSource.camera);
setState(() {
_image = image;
//Try to send data or image back to main screen
List<int> imageBytes = image.readAsBytesSync();
String base64Image = BASE64.encode(imageBytes);
//send data back
Navigator.push(context, new MaterialPageRoute(builder: (_) =>
new MyApp(_image.)));
});
}
如您所见,我使用方法将图像发送回 来自相机
List<int> imageBytes = image.readAsBytesSync();
String base64Image = BASE64.encode(imageBytes);
Navigator.push(context, new MaterialPageRoute(builder: (_) =>
new MyApp(_image.)));
进入主目录
final String _images = "";
MyApp(String _images, {Key key}) : super(key: key);
但是,我得到了错误
[dart] The constructor returns type 'dynamic' that isn't of expected type 'Widget'.
你能告诉我吗?
最好的问候 谢谢
【问题讨论】: