Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 非抽象类&x27_加载屏幕状态';缺少实现_Flutter_Dart - Fatal编程技术网

Flutter 非抽象类&x27_加载屏幕状态';缺少实现

Flutter 非抽象类&x27_加载屏幕状态';缺少实现,flutter,dart,Flutter,Dart,我有一个错误: 编译器消息:lib/screens/loading\u screen.dart:10:7:错误:错误 缺少非抽象类“\u LoadingScreenState” 对于这些成员: -State.build尝试 -实施,, -从超类或mixin继承实现, -将类标记为抽象类,或 -提供“noSuchMethod”实现 类加载Screenstate扩展状态{ ^^^^^^^^^^^^^^^^^^^/C:/src/flatter/flatter/packages/flatter/lib/

我有一个错误:

编译器消息:lib/screens/loading\u screen.dart:10:7:错误:错误 缺少非抽象类“\u LoadingScreenState” 对于这些成员: -State.build尝试 -实施,, -从超类或mixin继承实现, -将类标记为抽象类,或 -提供“noSuchMethod”实现

类加载Screenstate扩展状态{ ^^^^^^^^^^^^^^^^^^^/C:/src/flatter/flatter/packages/flatter/lib/src/widgets/framework.dart:1314:10: 上下文:“State.build”在这里定义。小部件构建(BuildContext 上下文); ^^^^^

我尝试了不同的方法,但都没用。我更新了我的安卓系统 演播室

编译器消息:lib/screens/loading\u screen.dart:10:7:错误:错误 缺少非抽象类“\u LoadingScreenState” 对于这些成员: -State.build尝试 -实施,, -从超类或mixin继承实现, -将类标记为抽象类,或 -提供“noSuchMethod”实现

类加载Screenstate扩展状态{ ^^^^^^^^^^^^^^^^^^^/C:/src/flatter/flatter/packages/flatter/lib/src/widgets/framework.dart:1314:10: 上下文:“State.build”在这里定义。小部件构建(BuildContext 上下文)

我的代码:

import 'package:clima/screens/location.dart';
import 'package:http/http.dart' as http;

class LoadingScreen extends StatefulWidget {
  @override
  _LoadingScreenState createState() => _LoadingScreenState();
}

class _LoadingScreenState extends State<LoadingScreen> {
  void initState() {
    super.initState();
  }

  void getLocation() async {
    Location location = Location();

    await location.getCurrentLocation();
    print(location.latitude);
    print(location.longitude);
  }

  void getData() async {
    http.Response response = await http.get(
        "https://samples.openweathermap.org/data/2.5/weather?lat=35&lon=139&appid=b6907d289e10d714a6e88b30761fae22");
    print(response.statusCode); // Body or StatusCode

    if (response.statusCode == 200) {
      String data = response.body;
      print(data);
    } else {
      print(response.statusCode);
    }

    @override
    Widget build(BuildContext context) {
      getData();
      return Scaffold();
    }
  }
}
import'包:clima/screens/location.dart';
将“package:http/http.dart”导入为http;
类加载屏幕扩展StatefulWidget{
@凌驾
_LoadingScreenState createState()=>\u LoadingScreenState();
}
类加载Screenstate扩展状态{
void initState(){
super.initState();
}
void getLocation()异步{
位置=位置();
等待位置。getCurrentLocation();
打印(位置、纬度);
打印(位置、经度);
}
void getData()异步{
http.Response-Response=等待http.get(
"https://samples.openweathermap.org/data/2.5/weather?lat=35&lon=139&appid=b6907d289e10d714a6e88b30761fae22");
打印(response.statusCode);//正文或状态代码
如果(response.statusCode==200){
字符串数据=response.body;
打印(数据);
}否则{
打印(响应状态码);
}
@凌驾
小部件构建(构建上下文){
getData();
返回脚手架();
}
}
}

构建方法放置在错误的位置,在您的代码中有以下内容:

  void getData() async {
    http.Response response = await http.get(
        "https://samples.openweathermap.org/data/2.5/weather?lat=35&lon=139&appid=b6907d289e10d714a6e88b30761fae22");
    print(response.statusCode); // Body or StatusCode

    if (response.statusCode == 200) {
      String data = response.body;
      print(data);
    } else {
      print(response.statusCode);
    }

    @override
    Widget build(BuildContext context) {
      getData();
      return Scaffold();
    }
  }
 void getData() async {
    http.Response response = await http.get(
        "https://samples.openweathermap.org/data/2.5/weather?lat=35&lon=139&appid=b6907d289e10d714a6e88b30761fae22");
    print(response.statusCode); // Body or StatusCode

    if (response.statusCode == 200) {
      String data = response.body;
      print(data);
    } else {
      print(response.statusCode);
    }
  }

    @override
    Widget build(BuildContext context) {
      getData();
      return Scaffold();
    }
if和else的括号都正确,而
getData()
的括号在
build
方法关闭之后

将其更改为以下内容:

  void getData() async {
    http.Response response = await http.get(
        "https://samples.openweathermap.org/data/2.5/weather?lat=35&lon=139&appid=b6907d289e10d714a6e88b30761fae22");
    print(response.statusCode); // Body or StatusCode

    if (response.statusCode == 200) {
      String data = response.body;
      print(data);
    } else {
      print(response.statusCode);
    }

    @override
    Widget build(BuildContext context) {
      getData();
      return Scaffold();
    }
  }
 void getData() async {
    http.Response response = await http.get(
        "https://samples.openweathermap.org/data/2.5/weather?lat=35&lon=139&appid=b6907d289e10d714a6e88b30761fae22");
    print(response.statusCode); // Body or StatusCode

    if (response.statusCode == 200) {
      String data = response.body;
      print(data);
    } else {
      print(response.statusCode);
    }
  }

    @override
    Widget build(BuildContext context) {
      getData();
      return Scaffold();
    }

没关系,这是常有的事