Flutter缺少打印实现

时间:2018-10-04 13:44:46

标签: dart flutter

我开始学习飞镖/飞镖,并坚持使用基本的印刷品。

我有一些通过Android Studio运行的基本应用。

我注意到,我可以在myLocationApp类中很好地使用'print'和'debugPrint',但不能在myTestLocation类中使用。

如果我尝试使用

print( myTestString );

错误是

compiler message: lib/main.dart:8:7: Error: The non-abstract class 'MyTestLocation' is missing implementations for these members:
compiler message:   'print'.

当我在线搜索例如here时,它没有提及任何内容,所以我在这里缺少的主要本质是什么,我想我需要修改该类以包括/引用印刷品?但不确定最好的方法是什么。


import 'package:flutter/material.dart';
import 'package:location/location.dart';
import 'package:flutter/foundation.dart';

void main() => runApp(new MyLocationApp());

class MyTestLocation { String myTestString = "Testing2"; print( myTestString ); // No implentation error here

}

class MyLocationApp extends StatelessWidget { @override Widget build(BuildContext context) { // TODO: implement build

final location = new MyTestLocation();
debugPrint( location.toString() );

return new MaterialApp(
  title: 'Welcome',
  home: new Scaffold(
    appBar: new AppBar(
      title: new Text('appBarTitle'),
    ),
      body: new Center(
        child: new Text( location.myTestString ),
      )
  ),
);

} }

2 个答案:

答案 0 :(得分:1)

据我了解,您希望在初始化类时打印“ print(myTestString)”(行:最终位置= new MyTestLocation();)。为此,您必须实现MyTestLocation的构造函数,如下所示:

class MyTestLocation {
  String myTestString = "Testing2";

  MyTestLocation() {
    print(myTestString);
  }
}

您在任何类的根目录中编写的代码都具有声明性功能(可以说不是“运行”)。

答案 1 :(得分:0)

您的课程MyTestLocation包含错误。基本上使用您的以下代码

class MyTestLocation  {
  String myTestString = "Testing2";
  print( myTestString ); // No implentation error here
}

您定义了一个类MyTestLocation,其类的字段myTestString初始化为Testing2,并且定义了抽象方法print,其参数名为myTestString。只需删除此打印行,您的应用就可以使用。

编辑:修复我的混乱情况-对不起