계속 되는 예제 따라하기 - 당분간 코드팩토리 님 책.

https://github.com/1day1/flutter-practice-wemet

일단 시작
https://github.com/1day1/flutter-practice-wemet/commit/742c1bcc46aa0b35f9343404a38c765335411a3f

하나씩 개선해 나간다.

 

[개선할 사항]

뭐가 있을까?

1) 날짜를 저장해보자. shared_preferences 같은 것으로 저장해보자.
https://github.com/1day1/flutter-practice-wemet/commit/7e950cd51c26a5c1db77efa9e22ee64de763bc8b

재실행해도 날짜를 기억한다.

2) iOS 시뮬레이터 상에 날짜 선택할때 이상한 부분이 있다.(시뮬레이터에서만 그런가?)

 

 

반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,

이번에는 코드팩토리 님의 책을 보면서 따라하고 있다.

책은 보강이 되어 2판이 나왔으니, 혹시 참조
https://www.aladin.co.kr/shop/wproduct.aspx?ItemId=332270019

 

Must Have 코드팩토리의 플러터 프로그래밍 2판

플러터 시작을 위한 다트 언어를 기초부터 객체지향, 비동기 프로그래밍, 신규 3.0 문법까지 4개 장에 걸쳐 다룬다. 독자가 꼭 필요한 내용을 학습할 수 있도록 플러터 기본 위젯부터 현업에 유용

www.aladin.co.kr

이번 예제는 복잡하지는 않지만, 개선 부분을 시도해보려고 추가한다.
https://github.com/1day1/flutter-practice-pageview

 

[개선할 부분]

1) 이미지를 assets 으로 등록해서 보여주는 것을 network 에서 가져오는 방식으로 변경
https://github.com/1day1/flutter-practice-pageview/commit/868e7c401119cb3ffec4ecd4dd1a29c78b718090

2) 이미지를 폰의 이미지를 가져와서 보여주는 방식으로 변경.
https://github.com/1day1/flutter-practice-pageview/commit/c1a683e8388d793f60c99ca472d598582e3f9f34

  커밋 하니 여러개가 딸려가네( vs code / android studio 가 git 처리 방식이 다른가?)
  혹시 보실 분은 참조 ( lib/ 아래 코드만 보시면 될 듯 )

  image_picker 를 활용한 방법

3) 위 2)번에서 이미지의 페이지 수 / 페이지 상 위치등도 표시.

 

반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,

[따라하기의 필수는 가능한 직접 타이핑 한다]

노마드코더님의 강의는 일단 마지막 따라하기 가 될 듯 하다.
웹툰 강의 : https://nomadcoders.co/flutter-for-beginners/lectures/4159

json 데이터 처리하기 / FutureBuilder / shared_preferences 등 여러가지 유용한 것들
https://github.com/1day1/flutter-practice-webtoon

url_launcher 부분에서 iOS / android 등 설정하는 부분은 좀더 살펴봐야 할 듯 하다.(iOS 가 실행이상)

[iOS 이슈 해결]
iOS 쪽 설정 ( iOS / Runner / Info.plist 수정 후 )

	<key>LSApplicationQueriesSchemes</key>
	<array>
		<string>https</string>
	</array>


시뮬레이터 가 이상이 있었는데, cocoapods 를 재설치? 를 해주면 되는 것 같다 (맥 기준 아래 명령)

brew install cocoapods

 

개선할 사항이 있을 듯 하지만, 왠지 디비 연동이 필요할 듯 하다. - 일단 여기서는 패스 .. 다른 강의로..

반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,

한동안 이런식으로 앱개발 따라하기 를 정리하기로 했다.

[따라하기의 필수는 가능한 직접 타이핑 한다]

기본강의는 노마드코더 님의 강의를 참조
이번강의 : https://nomadcoders.co/flutter-for-beginners/lectures/4154

조금씩 개선해보는 것을 정리한다.

타이머 시작 / 중지 / 리스타트 등의 처리
기본 다크모드 색상으로 / 색상처리 최신버전에 맞게 교정.
https://github.com/1day1/flutter-practice-pomodoro

 

[개선해볼 사항]

1) 다크모드 를 전환할 수 있게. 버튼위치를 어디로 할까?
https://github.com/1day1/flutter-practice-pomodoro/commit/cf2d908b06489cebb321c9b6a6f92af79b652632

2) 온보딩 - onboarding 처리해봤다.
https://github.com/1day1/flutter-practice-pomodoro/commit/0a701eecfcbb7c037670ca4027ebc946df7ad499

온보딩 처리는 https://www.youtube.com/watch?v=BfR_daMJ6I8 강의를 참조했는데,
해당 부분에서 onboarding_info 클래스가 vscode 에서 에러경고로 안되서, set / get 처리 하는 방식으로 수정을 했다.

 

추가 개선사항은 일단 여기까지... 다른 강의로...

반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,

플러터를 공부하면서, 강의도 보면서 따라 앱 만들기를 하고 있다.

[따라하기의 필수는 가능한 직접 타이핑 한다]

여러강의를 보면서 따라하고, 진행상황을 정리하고자 한다.

이번은 노마드코더 님의 강의 중 한 부분을 따라했다.
https://nomadcoders.co/flutter-for-beginners/lectures/4139 (3강 UI Challenge )

* 깃허브에 기본강의 + 나름의 개선 사항을 적용해봤다.
https://github.com/1day1/flutter-practice-toonflix

wallet 의 카드 부분을 커스텀 위젯으로 만들고, 이 부분을 또 데이터를 넘겨서 처리해봤다.
https://github.com/1day1/flutter-practice-toonflix/blob/main/lib/widgets/wallet.dart

typedef WalletData = ({
  String text1,
  String amount,
  String text3,
  IconData curIcon,
  bool isInverted
});

typedef 로 데이터를 정의하고 ( C/go 등의 구조체 -struct- 와 비슷한 것 같다) 해당 데이터를 List 화 한 후 넘겨주었다.

walletDatas: [
                    (
                      text1: 'Euro',
                      amount: '6 234',
                      text3: 'EUR',
                      curIcon: Icons.euro_rounded,
                      isInverted: false,
                    ),
                    (
                      text1: 'Dollar',
                      amount: '55 124',
                      text3: 'USD',
                      curIcon: Icons.attach_money_outlined,
                      isInverted: true,
                    ),
                    (
                      text1: 'Bitcoin',
                      amount: '1.2894',
                      text3: 'BTC',
                      curIcon: Icons.currency_bitcoin_outlined,
                      isInverted: false,
                    )
                  ]

 

[추가 개선할 부분]

1) curIcon 과 isInverted 도 값을 넘겨줄 필요없이, 내부적으로 처리한다.
2) text1 / text3 도 한쪽만 값을 보내서 처리한다.
=> https://github.com/1day1/flutter-practice-toonflix/commit/ab019691a70aa38a9908cee2a543c351ca51ec59

currencyInfo 를 내부 데이터로 처리했는데, 2차원 Map 의 접근은 못하나?
(예를 들어 currencyInfo['USD']['currency'] 로 바로 접근이 되면 좋은데, 못 찾겠다.)

일단 singleWhere 로 처리함.

3) 위 값을 json 타입으로 가져온다(외부 연동 염두)
=> https://github.com/1day1/flutter-practice-toonflix/commit/2d812367e535f296a8d55b6ec04d29a0c525637e

json 파일을 불러와서 보여지도록 조치함.

 

[일단 여기까지 다른 강의 따라하기로 ..]

반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,