inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

BottomNavigationBar 질문

미해결

[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!

검색 방법이 잘못된건지 모르지만 구글에 검색해도 해결법이 나오지않아 질문 올립니다. bottomNavagtionBar: GestureDetector( onTap: (){ Navigator.push(context, MaterialPageRoute(builder: (context) => CommentRegisterScreen( id: widget.id))); }, child: TRoundedContainer( height: 60, backgroundColor: const Color(0xffF8F8FA), padding: const EdgeInsets.all(TSizes.defalutSpace), radius: 0, child: Text( '댓글을 남겨보세요.', style: Theme.of(context).textTheme.bodyMedium!.copyWith(color: Colors.grey), ), ), ), child: SingleChildScrollView( child: Padding( padding: const EdgeInsets.all(TSizes.defalutSpace), child: Column( children: [ const SizedBox(height: TSizes.spaceBtwItems), SizedBox( height: MediaQuery.of(context).size.height, child: Column( mainAxisAlignment: MainAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start, children: [ Expanded( child: PaginationListViewV2( model: state, id: widget.id, provider: commentProvider(widget.id), itemBuilder: <Comment>(_,index,comment){ if(index == 0){ return Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ /// 제목 Text(state.title, style: Theme.of(context).textTheme.headlineMedium), const SizedBox(height: TSizes.spaceBtwItems), /// 닉네임 Row( crossAxisAlignment: CrossAxisAlignment.center, children: [ const TRoundedImage( width: 24, height: 24, fit: BoxFit.fill, imageUrl: 'asset/img/no_image.png', borderRadius: 100, ), const SizedBox(width: TSizes.sm), Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Text( state.creator, style: Theme.of(context).textTheme.bodyLarge, ), ], ), ], ), const SizedBox(height: TSizes.spaceBtwItems), /// 날짜, 좋아요 Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ Text( state.createDate.split("T")[0], style: Theme.of(context).textTheme.bodyMedium!.copyWith(color: Colors.grey), ), GestureDetector( onTap: button.disable==false ? () async { //버튼 비활성화 await button.change(); await check == -1 ? ref.read(communityProvider.notifier).clickFavorite(widget.id) : ref.read(communityProvider.notifier).downFavorite(widget.id); await ref.read(favoriteProvider.notifier).updateFavorites(widget.id); //버튼 활성화 await button.change(); } : null, child: check == -1 ? TRoundedContainer( showBorder: true, padding: const EdgeInsets.all(TSizes.sm), borderColor: Colors.redAccent, radius: 10, child: Row( crossAxisAlignment: CrossAxisAlignment.center, children: [ Text( '좋아요', style: Theme.of(context).textTheme.labelMedium!.copyWith(color: Colors.redAccent), ), const SizedBox(width: TSizes.xs), Text( state.favorite.toString(), style: Theme.of(context).textTheme.labelMedium!.copyWith(color: Colors.redAccent), ), ], ), ) : TRoundedContainer( padding: const EdgeInsets.all(TSizes.sm), backgroundColor: Colors.redAccent, radius: 10, child: Row( crossAxisAlignment: CrossAxisAlignment.center, children: [ child: SizedBox( height: 120, child: ListView.separated( shrinkWrap: true, scrollDirection: Axis.horizontal, itemCount: imgs.length, separatorBuilder: (_, __) { return const SizedBox(width: TSizes.spaceBtwItems / 2); }, itemBuilder: (_, int index) { return TRoundedImage( imageUrl: imgs[index].toString().trim(), width: 120, height: 120, fit: BoxFit.fill, borderRadius: 12.0, isNetworkImage: true, ); }, ), ), ), ], ) : const SizedBox(), const SizedBox(height: TSizes.spaceBtwSections), /// 글 내용 Text( state.content.trim(), style: Theme.of(context).textTheme.bodyMedium!.copyWith(height: 1.5), ), /// 댓글 0이 아닐 경우 Row( children: [ Text('댓글', style: Theme.of(context).textTheme.bodySmall), const SizedBox(width: TSizes.spaceBtwItems / 2), Text(state.commentCnt.toString(), style: Theme.of(context).textTheme.bodySmall), ], ), const SizedBox(height: TSizes.spaceBtwItems), CommentCard( comment:comment, recomments:comment.commentList, board_id: widget.id ) ], ); } return CommentCard( comment:comment, recomments:comment.commentList, board_id: widget.id ); }), ), Container( height: 210 ) ] ), ), // Center(child: Text('첫 댓글을 남겨주세요.', style: Theme.of(context).textTheme.bodySmall)), ], ), ), ), 위 코드와 같이 BottomNavigationBar와 SinglechildScrollView를 같이 사용하고 있습니다. 가장 하단의 Container( height: 210 ) 위 코드를 넣어주지 않을 시 화면 스크롤이 모두 안되고 짤리는 현상이 발생합니다. 혹시 이러한 경험이 있어 해결방법이 있다면 알려주시면 감사하겠습니다.

  • flutter
  • 하이브리드-앱
dlckdals9467 댓글 1 좋아요 0 조회수 228

플러터 내 생성 시 file / directory의 차이

해결됨

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

플러터 내 생성 시 file / directory의 차이가 궁금합니다. 어떨 때는 New에서 file을 생성하고 어떨 때는 directory를 생성해서요~

  • flutter
  • 클론코딩
DI 댓글 1 좋아요 0 조회수 225

toolchanin 에러가 발생합니다.

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

Android toolchain - develop for Android devices X Unable to locate Android SDK. Install Android Studio from: https://developer.android.com/studio/index.html On first launch it will assist you in installing the Android SDK components. (or visit https://flutter.dev/docs/get-started/install/windows#android-setup for detailed instructions). If the Android SDK has been installed to a custom location, please use flutter config --android-sdk to update to that location. Android SDK is up to date. Running Android Emulator hypervisor driver installer [SC] ControlService 실패 1062: 서비스가 시작되지 않았습니다. [SC] DeleteService 성공 [SC] 4294967201 오류가 발생하여 StartService이(가) 실패했습니다. Done 이런 오류는 어떻게 해결하나요?

  • flutter
  • 클론코딩
조은형 댓글 1 좋아요 1 조회수 263

다시 getDetail호출?

미해결

[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!

제 생각이 조금이라도 이상한 곳이 있다면 말씀해주세요 ~! ㅎㅎ 첫번째 질문은 , detail_screen.dart에서 initState에 ref.read(restaurantProvider.notifier).getDetail(id: widget.id); 만 사용하였는데 만약 restaurantDetailModel이 이미 있는 id를 또 getDetail한 거였다면, 다시 getDatil을 호출할 필요가 없으므로 이떄 initState에 ref.read(restaurantDetailProvider) is restaurantDetailModel 라면 getDatil을 호출하지 않겠다를 추가로 넣으면 좋겠다 생각하는데 제 생각이 어떠한가요?? 두번째 질문은 restaurant > provider > restaurant_provider.dart 에서 네트워크 요청을 하다가 등등 에러가 날수 있을 거 같은데 여기는 catch 로 잡아서 state를 왜 error로 만들지 않았나 궁금합니다..!

  • flutter
  • 하이브리드-앱
유하 댓글 1 좋아요 0 조회수 183

IBKR Desktop Global Configuration 설정

해결됨

파이썬 알고리즘 트레이딩 파트2: Interactive Brokers API를 활용한 실시간 알고리즘 트레이딩

안녕하세요 강사님 IBKR Desktop 다운로드 이후 api 설정을 해주려고 했는데요 뭔가 버전이 다른 건지 화면이 달라서 어디서 설정을 할 수 있는지가 잘 안보여서 문의드립니다! 감사합니다!

  • python
  • 객체지향
  • 퀀트
luca 댓글 2 좋아요 1 조회수 437

강의 자료 부탁드립니다

미해결

프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)

안녕하세요 파이썬 강의 자료 부탁드립니다 mhchoi933@gmail.com 감사합니다 !

  • python
댓글 1 좋아요 0 조회수 166

initState -> didChangeDependencies -> dirty -> build -> clean 라이프사이클 강의를 보고 궁금한건데

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

내용은 전반적으로 이해가 됩니다. 질문내용은 print로 찍어봐서 라이프사이클은 initState -> build -> initState타이머만 작동하는거를 알 수 있었는데 initState에서 build로 갔으면 타이머가 작동을 어떻게 하나요? initState에서 build로 가고 clean 후 deactivate로 안가고 initState 타이머로 가는 원리가 궁금합니다. 제가 머릿속으로 생각해봤을때는 initState 시작 후 마치 반복문 무한루프처럼 build로 갈 수 없고 계속 타이머 돌아가지 않나 싶어서요

  • flutter
  • 클론코딩
박근주 댓글 1 좋아요 0 조회수 258

섹션22 동영상플레이어에서 로고 클릭시 오류 발생합니다.

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

IOS 시뮬레이터 사용하여 로고 클릭시 Lost connection to device. Error: Unable to terminate com.example.vidPlayer on 6913EF1F-C2DE-4C17-A1F2-7948E943B273: ProcessException: Process exited abnormally with exit code 3: An error was encountered processing the command (domain=NSPOSIXErrorDomain, code=3): Simulator device failed to terminate com.example.vidPlayer. found nothing to terminate Underlying error (domain=NSPOSIXErrorDomain, code=3): The request to terminate "com.example.vidPlayer" failed. found nothing to terminate found nothing to terminate Command: /usr/bin/arch -arm64e xcrun simctl terminate 6913EF1F-C2DE-4C17-A1F2-7948E943B273 com.example.vidPlayer the Dart compiler exited unexpectedly. 오류가 뜨면서 어플 밖으로 나가버리네요. 해결방법 알 수 있을까요?

  • flutter
  • 클론코딩
rhrbghk 댓글 6 좋아요 2 조회수 938

데이터가 List형태일때 질문해 봅니다.

미해결

[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!

안녕하세요. 제가 질문을 잘못했던거 같습니다. 데이터가 Map형태가 아니고 List형태일때 CursorPagination을 사용할 수 있나요? 목적은 CursorPaginationBase를 extends 하고 싶어서 입니다. 된다면 CursorPagination을 어떻게 구성해야 하는지 힌트를 좀 주실 수 있을까요? 아니면 보통 데이터를 Map 형태로 고쳐서 사용하나요? 아니면 제가 잘못이해한걸까요? 데이터가 meta나 data안에 있어야 하는게 Map형태라고 생각했는데 그게 아니고 List형태도 key와 value로 나누면 Map형태가 되는건가요?

  • flutter
  • 하이브리드-앱
김의성 댓글 2 좋아요 0 조회수 185

세션 29 isar database open error

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

안녕하세요. Unique Constraint 테스트하기 강의에서 izar database를 main 함수 내에서 여는 코드에서 에러가 나서 진행이 되지 않고 있습니다,, main.dart import 'package:dusty_dust/model/stat_model.dart'; import 'package:dusty_dust/screen/home_screen.dart'; import 'package:flutter/material.dart'; import 'package:isar/isar.dart'; import 'package:path_provider/path_provider.dart'; void main() async { //main 함수에서 runApp말고 다른 거 실행하려면 이걸 적어줘야함. WidgetsFlutterBinding.ensureInitialized(); final dir = await getApplicationDocumentsDirectory(); final isar = await Isar.open( [StatModelSchema], directory: dir.path, ); runApp( MaterialApp( theme: ThemeData( fontFamily: 'sunflower' ), home: HomeScreen(), )); } pubspec.yaml cupertino_icons: ^1.0.2 dio: ^5.4.3+1 isar: ^3.1.0+1 isar_flutter_libs: ^3.1.0+1 path_provider: ^2.1.2 isar_generator: ^3.1.0+1 Error Message E/flutter ( 364): [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: MissingPluginException(No implementation found for method getApplicationDocumentsDirectory on channel plugins.flutter.io/path_provider ) E/flutter ( 364): #0 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:332:7) E/flutter ( 364): <asynchronous suspension> E/flutter ( 364): #1 getApplicationDocumentsDirectory (package:path_provider/path_provider.dart:121:24) E/flutter ( 364): <asynchronous suspension> E/flutter ( 364): #2 main (package:dusty_dust/main.dart:11:15) E/flutter ( 364): <asynchronous suspension> E/flutter ( 364):

  • flutter
  • 클론코딩
가람 댓글 1 좋아요 0 조회수 370

스크롤의 maxScrollExtent 관련 문의

미해결

[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!

안녕하세요 저도 완성된 pagination 로직 실행해보기 강의에서 스크롤 리스너의 if문 조건이 적용되지 않아서 문의 드립니다. 저는 구현된 코드를 확인했을때 maxScrollExtent 값이 엄청 크게 나옵니다. 그래서 같은 리스트를 세번 정도는 반복 스크롤을 해야 컨트롤러의 offset이 maxScrollExtent와 동일해집니다. 최초 리스너 동작 시 scroll 위치 : 6.6650390625 maxScrollExtent : 7485.526283048211 확인해본 사항은 아래와 같습니다. item 중복 저장 여부 : 최 초 로딩 후 데이터 사이즈를 확인했을때도 사이즈는 20개 입니다. 리스트뷰 구현 오류인지 확인 : 컨트롤러를 빼고 테스트하면, 20개 크기 그대로 리스트뷰가 생성됩니다. 사이즈가 안먹히는 것 같아서 픽셀 위치 대신 데이터 갯수를 index로 관리해서 해보려고 했는데, 정확히 맞는 방법인지도 모르겠어서 문의드립니다. T_T...어딘가 단단히 잘못된 것 같은데 모르겠습니다...

  • flutter
  • 하이브리드-앱
zzangdol zo 댓글 1 좋아요 0 조회수 229

dio요청시 에러 상태코드임에도 onError가 아닌 onReponse에서 응답

해결됨

[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!

flutter: [REQ] [METHOD] GET [ENDPOINT] http://localhost:8080/api/user/info flutter: [RES] [METHOD] GET [ENDPOINT] http://localhost:8080/api/user/info [STATUS CODE] 401 현재 제가 진행 중인 프로젝트에서 401 코드임에도 불구하고 onError가 아닌 onReponse로 넘어갑니다. 액세스 토큰 재발급 과정을 onResponse에서 진행해도 되는걸까요? throw new InvalidVerificationCodeException(ErrorCode.INVALID_CODE); } 백엔드에서 이렇게 에러를 내주는 onResponse로 넘어오네요..

  • flutter
  • 하이브리드-앱
맥북유저 댓글 2 좋아요 0 조회수 261

widget.color 가 헷갈립니다.

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

안녕하세요! widget.color가 동작 방식이 이해가 가질 않습니다. ㅜ stateful 클래스와 state 클래스를 바인딩 시켜주면 widget.color의 state클래스에서 widget은 stateful클래스를 참조한다고 생각하면 될까요?

  • flutter
  • 클론코딩
yesman 댓글 1 좋아요 0 조회수 263

vercel 배포했는데 잘 되다가 안들어가집니다.

미해결

Next + React Query로 SNS 서비스 만들기

안녕하세요 제로초님 강의 잘 듣고있었는데, 강의 질문이 아니라 다른 질문이라 죄송합니다. 당장 다음주 월요일부터 심사가 시작되는 공모전에 나갈 프로젝트인데 잘 되던게 갑자기 안들어가져서요 ㅠㅠㅠㅠ 약 한달전에 배포 cicd 설정 다 해놓고 어제밤까지만해도 문제없이 잘 들어가졌는데 오늘 갑자기 안들어가지네요.. dns_probe_finished_nxdomain 이라고 뜬대요 근데 제 pc로는 캐시를 다 삭제하고 들어가도 잘 되거든요 근데 모바일에선 안되고 다른 사람은 안들어가진다고 하는데 원인이 뭘까요..? 제 pc에서도 크롬에서만 들어가지고 다른 브라우저는 안됩니다. 메일로 vercel에서 뭐 온것도 없습니다.. vercel 설정에서 domains에 문제도 없구요. 메일로 vercel에서 뭐 온것도 없습니다. 빌드 에러도 없구요 무료플랜이었어서 유료플랜으로 업그레이드 했는데도 똑같습니다.. ㅠㅠ 도메인이름은 공개적으로 못 적지만 개인적으로 알려드리겠습니다. ci/cd 되어있어서 main에 계속 push해봐도 빌드 잘 되는데 들어가지지를 않아요...

  • next.js
  • vercel
  • dns
  • domain
apinksky00 댓글 1 좋아요 0 조회수 2382

checkToken 함수 read 에러 관련 질문

미해결

[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!

안녕하세요. iOS 시뮬레이터로 개발중입니다. checkToken 함수 실행 시 Unhandled Exception: PlatformException(Unexpected security result code, Code: -25300, Message: The specified item could not be found in the keychain., -25300, null) 에러가 발생하여 질문드립니다. 값이 없을 경우 nullable string이 나와야 하는데 exception이 나오는 이유가 궁금해요. 혹시 몰라서 write를 먼저 하고 read를 했더니 값이 잘 불러와집니다.

  • flutter
  • 하이브리드-앱
AJJ 댓글 2 좋아요 0 조회수 321

searchParams props

미해결

Next + React Query로 SNS 서비스 만들기

안녕하세요 search 페이지 props에서 searchParams props가 기본적으로 제공된다고 알고있는데 저는 콘솔로 찍어보니 나오지 않습니다..! 혹시 제가 잘못적용한건지 아니면 다시한번 확인해야 될곳이 있을까요?/ import SelectBox from "@/components/common/SelectBox"; import SelectStack from "@/components/common/SelectStack"; import Peoples from "@/components/people/Peoples"; import SearchForm from "@/components/common/SearchForm"; type Props = { searchParams: { page: string; size: string; sort?: string; keyword?: string; position?: string; teckStack?: string; }; }; export default function Page({ searchParams }: Props) { console.log("??", searchParams); return ( <div> <div className="relative flex items-center gap-4"> <h1 className="text-[36px] font-bold">People</h1> </div> <div className="flex justify-between"> <div className="flex gap-3"> <SelectBox options={option} title="포지션" /> <SelectStack /> </div> <SearchForm keyword={searchParams.keyword as string} /> </div> <Peoples searchParams={searchParams} /> </div> ); }

  • react
  • next.js
  • react-query
  • next-auth
  • msw
댓글 1 좋아요 0 조회수 256

프리즈마로 api만드시는 강의는 언제쯤 나올지 알 수 있을까요?

미해결

Next + React Query로 SNS 서비스 만들기

안녕하세요 선생님 프리즈마로 api만드시는 강의는 언제쯤 나올지 알 수 있을까요? 직접만든 api랑 이번수업에서 배울next로 플젝을 만들고 싶은데 궁금합니다.

  • react
  • next.js
  • react-query
  • next-auth
  • msw
챠챠_ 댓글 2 좋아요 0 조회수 274

PageController 를 statelesswidget 에서 사용하면

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

해당 pageview를 stateful에서 구현하라고 힌트 주셨는데 . controller와 timer를 @dispose 처리해야해서 인가요? 일단 성미가 급해서 힌트 안듣고 ㅋㅋ stateless에서 구현하고 나니 ful로 하라시길래 "아 이유를 설명해주시겠지" 했는데 잘 이해를 못했어요 ㅠㅠ

  • flutter
  • 클론코딩
pa6712 댓글 1 좋아요 0 조회수 243

핸드폰으로 자동 클릭안됩니다.

미해결

[자동화 완전 정복] 인스타그램 휴대폰, 웹 자동화 프로그램 개발

code: import time, random import data import uiautomator2 as u2 serial = "********" device = u2.connect(serial) device(resourceId="com.instagram.android:id/row_feed_button_like").click() 실행 시 오류 C:\Users\user\AppData\Local\Programs\Python\Python310\python.exe C:/Users/user/Desktop/pythonProject1/insta/ momobiletest.py Traceback (most recent call last): File "C:\Users\user\Desktop\pythonProject1\insta\momobiletest.py", line 8, in <module> device(resourceId="com.instagram.android:id/row_feed_button_like").click() File "C:\Users\user\AppData\Roaming\Python\Python310\site-packages\uiautomator2\_selector.py", line 149, in click self.must_wait(timeout=timeout) File "C:\Users\user\AppData\Roaming\Python\Python310\site-packages\uiautomator2\_selector.py", line 344, in must_wait raise UiObjectNotFoundError({'code': -32002, 'data': str(self.selector), 'method': 'wait'}) uiautomator2.exceptions.UiObjectNotFoundError: {'code': -32002, 'data': "Selector [resourceId='com.instagram.android:id/row_feed_button_like']", 'method': 'wait'} uiautomator2 버전은 3.0.10 adbutils 버전은 2.6.2 왜 계속 오류가 뜨고 안되는지 모르겠습니다.

  • python
  • selenium
김희수 댓글 2 좋아요 0 조회수 600

섹션 2 회원가입화면

해결됨

Flutter로 SNS 앱 만들기

예상하지 않게 안드로이드와 플러터 업 하면서 에러로 인하여 섹션 2에 이름,패스원드 확인 검징로직작성편을 다시 보고 있습니다. 그런데, 검증로직에서 에러 부분에 색상이 흰색으로 나와요. 강의화면처럼 빨강색으로 나오고 싶은데 어떻게 하면 됩니까 validator: (value) { if (value == null || value.trim().isEmpty || !isEmail(value.trim())) { return '이메일을 입력해주세요';

  • flutter
  • android
  • firebase
  • dart
vadain2000 댓글 2 좋아요 0 조회수 320

인기 태그

인프런 TOP Writers

주간 인기글