程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了我如何使用文本字段和按钮搜索来查找 api id大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决我如何使用文本字段和按钮搜索来查找 api id?

开发过程中遇到我如何使用文本字段和按钮搜索来查找 api id的问题如何解决?下面主要结合日常开发的经验,给出你关于我如何使用文本字段和按钮搜索来查找 api id的解决方法建议,希望对你解决我如何使用文本字段和按钮搜索来查找 api id有所启发或帮助;

这是我的代码,现在我可以从我的服务器调用 API,我想知道,我如何创建文本字段和按钮以在我的模拟器上单击以搜索 API ID

  • 现在我尝试先创建关于文本字段的内容,但我不知道我可以将文本字段放在我的代码中的什么位置,我也尝试将其放入正文和孩子中,这也行不通
    import 'dart:async';
    import 'dart:convert';
    import 'package:Flutter/material.dart';
    import 'package:http/http.dart' as http;
    Future<Album> fetchAlbum() async {
      final response =
      await http.get(Uri.parse('http://192.168.176.131:3000/API/courses/1'));
      if (response.statusCode == 200) {
        // If the server dID return a 200 OK response,// then parse the JsON.
        return Album.fromJson(JsonDecode(response.body));
      } else {
        // If the server dID not return a 200 OK response,// then throw an exception.
        throw Exception('Failed to load album');
      }
    }
    class Album {
      final int userID;
      final int id;
      final String title;
      Album({
        required thiS.UserID,required this.ID,required this.title,});
      factory Album.fromJson(Map<String,dynamic> Json) {
        return Album(
          userID: Json['userID'],ID: Json['ID'],title: Json['title'],);
      }
    }
    voID main() => runApp(MyApp());
    class MyApp extends StatefulWidget {
      MyApp({Key? key}) : super(key: key);
      @overrIDe
      _MyAppState createState() => _MyAppState();
    }
    class _MyAppState extends State<MyApp> {
      late Future<Album> futureAlbum;
      @overrIDe
      voID initState() {
        super.initState();
        futureAlbum = fetchAlbum();
      }
      @overrIDe
      Widget build(BuildContext context) {
        return MaterialApp(
          title: 'Fetch Data Example',theme: themeData(
            priMarySwatch: colors.blue,),home: Scaffold(
            appbar: Appbar(
              title: Text('Fetch Data Example'),body: Center(
              child: FutureBuilder<Album>(
                future: futureAlbum,builder: (context,snapshot) {
                  if (snapshot.hasData) {
                    return Text(snapshot.data!.titlE);
                  } else if (snapshot.hasError) {
                    return Text("${snapshot.error}");
                  }
    
                  // By default,show a loading spinner.
                  return CircularProgressInDicator();
                },);
      }
    }

解决方法

根据您想要的视图布局,您有很多选择。 TextField 是您可能要用于输入搜索关键字的控件。建议使用 TextEdiTingController 来获取值并以其他方式管理 TextField。

TextEdiTingController 添加到您的小部件:

TextEdiTingController searchController = new TextEdiTingController();

在您的 Scaffold 主体中,您将希望能够显示一个小部件列表。在此示例中,我通过将小部件包装在 column 中来堆叠小部件。 TextField 和 FlatButton 位于 Row 内,使用 Expanded 将它们彼此内联排列。左侧输入文本,右侧按钮。该行被抛出到 Container 中。当您按下按钮时,将在控制台上打印一条消息,其中包含在文本字段中输入的关键字。这是您搜索数据并根据搜索结果调整向用户显示的内容的机会。

这是我创建的构建方法:

@override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Fetch Data Example',theme: ThemeData(
        priMarySwatch: Colors.blue,),home: Scaffold(
        appBar: AppBar(
          title: Text('Fetch Data Example'),body: column(children: [
          Container(
            child: Row(children: [
              Expanded(
                flex: 2,child: TextField(
                  controller: searchController
                )
              ),Expanded(
                flex: 1,child: FlatButton(
                  onPressed: () {
                    print("this is the text to search for => ${searchController.text}");
                  },child: Text("Search"),)
              )
            ],)
          ),Center(
            child: FutureBuilder<Album>(
              future: futureAlbum,builder: (context,snapshot) {
                if (snapshot.hasData) {
                  return Text(snapshot.data?.titlE);
                } else if (snapshot.hasError) {
                  return Text("${snapshot.error}");
                }
                // By default,show a loading spinner.
                return CircularProgressInDicator();
              },],)
        
      ),);

大佬总结

以上是大佬教程为你收集整理的我如何使用文本字段和按钮搜索来查找 api id全部内容,希望文章能够帮你解决我如何使用文本字段和按钮搜索来查找 api id所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。