커뮤니티
포인트
쿠폰
내 강의실
국비 신청 내역
증명서
계정
로그아웃
학습 질문
개발 일지
나의 활동
답변 완료
숙제중인데 에러가 나서요
[왕초보] 노코드로 수익형 AI 앱 만들기
1주차
북마크
최*주
댓글
3
추천
0
조회수
13
조회수
13
답변 완료
스파르타 즉문즉답스파르타 즉문즉답

* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.

* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.









import '/flutter_flow/flutter_flow_icon_button.dart';

import '/flutter_flow/flutter_flow_theme.dart';

import '/flutter_flow/flutter_flow_util.dart';

import '/flutter_flow/flutter_flow_widgets.dart';

import 'dart:ui';

import 'package:easy_debounce/easy_debounce.dart';

import 'package:flutter/material.dart';

import 'package:google_fonts/google_fonts.dart';

import 'package:provider/provider.dart';


import 'history_model.dart';

export 'history_model.dart';


class HistoryWidget extends StatefulWidget {

 const HistoryWidget({super.key});


 @override

 State<HistoryWidget> createState() => _HistoryWidgetState();

}


class _HistoryWidgetState extends State<HistoryWidget> {

 late HistoryModel _model;


 final scaffoldKey = GlobalKey<ScaffoldState>();


 @override

 void initState() {

  super.initState();

  _model = createModel(context, () => HistoryModel());


  _model.textController ??= TextEditingController();

  _model.textFieldFocusNode ??= FocusNode();

 }


 @override

 void dispose() {

  _model.dispose();


  super.dispose();

 }


 @override

 Widget build(BuildContext context) {

  return GestureDetector(

   onTap: () {

    FocusScope.of(context).unfocus();

    FocusManager.instance.primaryFocus?.unfocus();

   },

   child: Scaffold(

    key: scaffoldKey,

    backgroundColor: FlutterFlowTheme.of(context).primaryBackground,

    appBar: AppBar(

     backgroundColor: FlutterFlowTheme.of(context).primary,

     automaticallyImplyLeading: false,

     title: Text(

      'History',

      style: FlutterFlowTheme.of(context).headlineMedium.override(

         fontFamily: 'Inter Tight',

         color: Colors.white,

         fontSize: 22,

         letterSpacing: 0.0,

        ),

     ),

     actions: [],

     centerTitle: false,

     elevation: 2,

    ),

    body: SafeArea(

     top: true,

     child: Column(

      mainAxisSize: MainAxisSize.max,

      crossAxisAlignment: CrossAxisAlignment.start,

      children: [

       Padding(

        padding: EdgeInsetsDirectional.fromSTEB(8, 32, 8, 0),

        child: Container(

         width: 400,

         child: TextFormField(

          controller: _model.textController,

          focusNode: _model.textFieldFocusNode,

          onChanged: (_) => EasyDebounce.debounce(

           '_model.textController',

           Duration(milliseconds: 2000),

           () => safeSetState(() {}),

          ),

          autofocus: false,

          obscureText: false,

          decoration: InputDecoration(

           isDense: true,

           labelText: '검색어 입력',

           labelStyle:

             FlutterFlowTheme.of(context).labelMedium.override(

                fontFamily: 'Inter',

                letterSpacing: 0.0,

               ),

           hintStyle:

             FlutterFlowTheme.of(context).labelMedium.override(

                fontFamily: 'Inter',

                letterSpacing: 0.0,

               ),

           enabledBorder: OutlineInputBorder(

            borderSide: BorderSide(

             color: FlutterFlowTheme.of(context).alternate,

             width: 2,

            ),

            borderRadius: BorderRadius.circular(8),

           ),

           focusedBorder: OutlineInputBorder(

            borderSide: BorderSide(

             color: Color(0x00000000),

             width: 2,

            ),

            borderRadius: BorderRadius.circular(8),

           ),

           errorBorder: OutlineInputBorder(

            borderSide: BorderSide(

             color: FlutterFlowTheme.of(context).error,

             width: 2,

            ),

            borderRadius: BorderRadius.circular(8),

           ),

           focusedErrorBorder: OutlineInputBorder(

            borderSide: BorderSide(

             color: FlutterFlowTheme.of(context).error,

             width: 2,

            ),

            borderRadius: BorderRadius.circular(8),

           ),

           filled: true,

           fillColor:

             FlutterFlowTheme.of(context).secondaryBackground,

           prefixIcon: Icon(

            Icons.search,

            size: 24,

           ),

           suffixIcon: _model.textController!.text.isNotEmpty

             ? InkWell(

               onTap: () async {

                _model.textController?.clear();

                safeSetState(() {});

               },

               child: Icon(

                Icons.clear,

                size: 24,

               ),

              )

             : null,

          ),

          style: FlutterFlowTheme.of(context).bodyMedium.override(

             fontFamily: 'Inter',

             letterSpacing: 0.0,

            ),

          cursorColor: FlutterFlowTheme.of(context).primaryText,

          validator:

            _model.textControllerValidator.asValidator(context),

         ),

        ),

       ),

       Divider(

        thickness: 2,

        color: FlutterFlowTheme.of(context).secondary,

       ),

       Padding(

        padding: EdgeInsetsDirectional.fromSTEB(8, 0, 8, 0),

        child: Row(

         mainAxisSize: MainAxisSize.max,

         mainAxisAlignment: MainAxisAlignment.spaceBetween,

         children: [

          Column(

           mainAxisSize: MainAxisSize.max,

           crossAxisAlignment: CrossAxisAlignment.start,

           children: [

            Padding(

             padding: EdgeInsetsDirectional.fromSTEB(0, 0, 0, 8),

             child: Row(

              mainAxisSize: MainAxisSize.max,

              children: [

               Padding(

                padding:

                  EdgeInsetsDirectional.fromSTEB(0, 0, 8, 0),

                child: Icon(

                 Icons.mail,

                 color: FlutterFlowTheme.of(context).primary,

                 size: 24,

                ),

               ),

               Text(

                'A열과 B열의 값을 차례대로 곱한 뒤 더해주는 수식',

                style: FlutterFlowTheme.of(context)

                  .bodyMedium

                  .override(

                   fontFamily: 'Inter',

                   letterSpacing: 0.0,

                  ),

               ),

              ],

             ),

            ),

            Text(

             '=SUMPRODUCT(A:A, B:B)',

             style:

               FlutterFlowTheme.of(context).bodyMedium.override(

                  fontFamily: 'Inter',

                  color: FlutterFlowTheme.of(context).primary,

                  letterSpacing: 0.0,

                 ),

            ),

           ],

          ),

          Column(

           mainAxisSize: MainAxisSize.max,

           children: [

            Text(

             '1/24',

             style:

               FlutterFlowTheme.of(context).bodyMedium.override(

                  fontFamily: 'Inter',

                  letterSpacing: 0.0,

                 ),

            ),

            FlutterFlowIconButton(

             borderRadius: 8,

             buttonSize: 40,

             icon: Icon(

              Icons.delete_sharp,

              size: 24,

             ),

             onPressed: () {

              print('IconButton pressed ...');

             },

            ),

           ],

          ),

         ],

        ),

       ),

       Divider(

        thickness: 2,

        color: FlutterFlowTheme.of(context).secondary,

       ),

       Padding(

        padding: EdgeInsetsDirectional.fromSTEB(8, 0, 8, 0),

        child: Row(

         mainAxisSize: MainAxisSize.max,

         mainAxisAlignment: MainAxisAlignment.spaceBetween,

         children: [

          Column(

           mainAxisSize: MainAxisSize.max,

           crossAxisAlignment: CrossAxisAlignment.start,

           children: [

            Padding(

             padding: EdgeInsetsDirectional.fromSTEB(0, 0, 0, 8),

             child: Row(

              mainAxisSize: MainAxisSize.max,

              children: [

               Padding(

                padding:

                  EdgeInsetsDirectional.fromSTEB(0, 0, 8, 0),

                child: Icon(

                 Icons.mail,

                 color: FlutterFlowTheme.of(context).primary,

                 size: 24,

                ),

               ),

               Text(

                'A와 B열의 값을 더해줘',

                style: FlutterFlowTheme.of(context)

                  .bodyMedium

                  .override(

                   fontFamily: 'Inter',

                   letterSpacing: 0.0,

                  ),

               ),

              ],

             ),

            ),

            Text(

             '=SUM(A1:B1)',

             style:

               FlutterFlowTheme.of(context).bodyMedium.override(

                  fontFamily: 'Inter',

                  color: FlutterFlowTheme.of(context).primary,

                  letterSpacing: 0.0,

                 ),

            ),

           ],

          ),

          Column(

           mainAxisSize: MainAxisSize.max,

           children: [

            Text(

             '1/24',

             style:

               FlutterFlowTheme.of(context).bodyMedium.override(

                  fontFamily: 'Inter',

                  letterSpacing: 0.0,

                 ),

            ),

            FlutterFlowIconButton(

             borderRadius: 8,

             buttonSize: 40,

             icon: Icon(

              Icons.delete_sharp,

              size: 24,

             ),

             onPressed: () {

              print('IconButton pressed ...');

             },

            ),

           ],

          ),

         ],

        ),

       ),

       Divider(

        thickness: 2,

        color: FlutterFlowTheme.of(context).secondary,

       ),

       Padding(

        padding: EdgeInsetsDirectional.fromSTEB(8, 0, 8, 0),

        child: Row(

         mainAxisSize: MainAxisSize.max,

         mainAxisAlignment: MainAxisAlignment.spaceBetween,

         children: [

          Column(

           mainAxisSize: MainAxisSize.max,

           crossAxisAlignment: CrossAxisAlignment.start,

           children: [

            Padding(

             padding: EdgeInsetsDirectional.fromSTEB(0, 0, 0, 8),

             child: Row(

              mainAxisSize: MainAxisSize.max,

              children: [

               Padding(

                padding:

                  EdgeInsetsDirectional.fromSTEB(0, 0, 8, 0),

                child: Icon(

                 Icons.mail,

                 color: FlutterFlowTheme.of(context).primary,

                 size: 24,

                ),

               ),

               Text(

                'A와 B열을 합쳐줘',

                style: FlutterFlowTheme.of(context)

                  .bodyMedium

                  .override(

                   fontFamily: 'Inter',

                   letterSpacing: 0.0,

                  ),

               ),

              ],

             ),

            ),

            Text(

             '=A1&\" \"&B1',

             style:

               FlutterFlowTheme.of(context).bodyMedium.override(

                  fontFamily: 'Inter',

                  color: FlutterFlowTheme.of(context).primary,

                  letterSpacing: 0.0,

                 ),

            ),

           ],

          ),

          Column(

           mainAxisSize: MainAxisSize.max,

           children: [

            Text(

             '1/24',

             style:

               FlutterFlowTheme.of(context).bodyMedium.override(

                  fontFamily: 'Inter',

                  letterSpacing: 0.0,

                 ),

            ),

            FlutterFlowIconButton(

             borderRadius: 8,

             buttonSize: 40,

             icon: Icon(

              Icons.delete_sharp,

              size: 24,

             ),

             onPressed: () {

              print('IconButton pressed ...');

             },

            ),

           ],

          ),

         ],

        ),

       ),

      ],

     ),

    ),

   ),

  );

 }

}


취소
 공유
취소
댓글 0
댓글 알림
나의얼굴