본문 바로가기

플러터31

[플러터] 위젯 사이즈 확인하기 GlobalKey... 이 녀석 어디다 쓰는지 명쾌하지 않았는데, 그중 한 예제가 될 수 있을 듯하다.우선 키를 생성한다. GlobalKey sizekey = GlobalKey();  사이즈 확인을 원하는 위젯에서, 키를 받아온다. Positioned(  child: SizedBox(    key: sizekey, // apply Global key for check size...    width: 200,    height: 250,  ),),  onPressed 이하 코드를 보게 되면, GlobalKey에서 Size를 가져오게 된다. 솔직히 말하면, 정확하게 무슨 과정인지 잘 모르겠다. Positioned(  top: 180,  left: 20,  child: TextButton(    style: .. 2022. 9. 13.
[플러터] 탭한 위치의 위치값 찾기 탭한 위치의 위치값(Offset)을 찾으려고 한다. positioned tap detector 패키지를 사용한다. 패키지 호출 import 'package:positioned_tap_detector_2/positioned_tap_detector_2.dart';  탭할때마다, 위치값이 바뀔거고, setState처리 해주기 귀찮으니, provider 사용 class MyPosition with ChangeNotifier {  TapPosition _position = TapPosition(Offset.zero, Offset.zero);  TapPosition get position => _position;  positionChange(TapPosition newpos) {    _position = newp.. 2022. 9. 13.
[플러터] web - NetworkImage, 이미지 안뜰 때 플러터 코드를 web에서 돌린다면, 꽤 많은 튜닝이 있어야 하겠지만, networkimage가 안될 줄은 몰랐다.찾아보니, build 할때 렌더러 옵션을 줘야한다고 한다. flutter build web --web-renderer html --release 후훗. 2022. 9. 1.
안드로이드 스튜디오 4.0 업데이트 후, Flutter 가 안보일 때 업데이트안드로이드 스튜디오든 다트든, flutter이든,업데이트는 위험하다 했다. 복잡한 뭔가를 하지 않는 나에게도 이런 시련이 찾아왔으니,안드로이드 스튜디오 4.0으로 업데이트를 한 이후였다.flutter로 프로젝트 시작하기가 보이지 않는다. 기존설정자동 업데이트를 진행할때, 기존설정들을 불러오게 되는데,거기 어디선가 문제가 발생하는 것 같다.   설정 초기화설정을 초기화 해주면 해결이 되는데,설정 초기화의 방법은 간단하다.해당 폴더를 무식하게 지우면 된다.   다시 처음부터기존에 설정해놨던 모든 것들을 다시 세팅해줘야한다. flutter 플러긴부터 설치해주자.  고생끝에 시작점VSCODE만 썼더니, 안드로이드 스튜디오가 생소한데, 이런 에러(?)를 가끔보면, 다신 켜고 싶지가 않다. ㅋㅋ   쓸데없이.. 2020. 9. 14.
[다트] 다트 FACTORY 클래스 샘플코드 플러터 곳곳에서 FACTORY를 만날수 있고, 여러 강좌에서 FACTORY에 대한 설명을 볼수 있다.낯은 익지만, 정확한 용법은 비전공자에게 납득이 어려운 부분이 있다. 지나치다가 본, 글에 그나마 설명이 잘된게 있어서, 메모해둔다. abstract class Number {  factory Number(String type) {    if (type == 'myNum1') return MyClass1(1);    if (type == 'myNum2') return MyClass2(4);    throw 'Can\'t create $type';  }  num get myNumber;}class MyClass1 implements Number {  final num _number;  MyClass1(thi.. 2020. 6. 11.
[플러터] 내 패키지 라이브러리 업데이트 내 라이브러리를 github에서 불러다가 쓰고 있다고 하자.라이브러리 코드를 좀 수정했다.다른 Package는 버전으로 관리가 된다고 하지만, 내껀 그렇지 못한데...   Get Package를 하면, 업데이트 된 내용이 마법처럼 적용이 될까?만약 이게 가능하다면, 다른 패키지들도 구지 버전을 표기하는 방식으로 운영하지는 않지 않을까...?결론은.. 안된다. 그럼 어찌해야하나.. 의외로 쉽게 stackoverflow에서 찾았는데, 아래 명령어를 터미널에 쳐주면 된다.    $ flutter packages upgrade resolved 음.. 정확한 의미는 모르겠지만, 되니까. 됐다. ㅋㅋ 2020. 2. 28.
[플러터] Provider 사용해보기(with SharedPreference) 나같은 취미, 초보자가 초반에 마주치는 몇가지장애물이 있는데, BLoC패턴도 그 중 하나일것이다. 뭔소린지 모르겠고, 귀찮아 보이는데,Provider 패키지가 그 역할을 대신해 줄수 있다고 한다. 물론, 이런 프로그래밍에서더 귀찮은 것을, 더 귀찮은게, 완전 대체할 수는 없다는거 정도는 안다.   일단, 쉬운걸로 개념을 잡고, 어려운거에...아~~~~~~~~~~주 나중에 도전을 해보자. 2020. 2. 28.
[플러터] 램디스크에서 플러터 빌드를 하면.. 속도 빨라질까? 빌드타임이 비교적 빠른 플러터이지만,매우 지루한 시간이라는건 변함이 없다.  나같이 후진 PC를 사용하는 사람이라면, 더 그렇겠지만, 이것때문에 PC를 바꾸기는 좀 애매하다.(취미를 게임으로 바꿔야하나....)   유튜브나 블로그에 보면 온갖 귀찮음을 이겨내고 여러가지 테스트를 하시는분들을 항상 존경해오긴 했지만,막상 해보니 진짜 귀찮은 관계로단일 시스템에서 테스트 해보기로 한다.   램디스크는 Freeware인 Softperfect Ram Disk를 사용했다.(램디스크 쳐서 가장 처음에 나오는 걸로 설치)사용된 PC는 랩탑이고, 8265u CPU, 8GB RAM(눈에 보이는 걸로..), IDE는 VS CODE이다. 사실 8GB에서 1GB를 할당해주는건.. 더 미친짓일 수 있다. 하지만 막연한 기대감에 .. 2020. 2. 27.
[플러터] class 이름을 string 값을 참조해서 불러오기 class 이름과 동일한 string 값이 있다. class를 불러올때, 이 string 값을 class 이름으로 사용하고 싶다. 매우 간단할 줄 알았는데, 그냥 하면 안된다. (당연한건가..) 더 재밌는건, 패키지 중에, 이걸 또 변환해 주는 패키지가 있다는 점이다.   ClassBuilder 패키지 사용 예시이다.나의 경우는, MaterialApp 부분에 route를 사용할때, 이름을 사전정의해야하는데,이게 또 귀찮아서... 불러올 이름들을 stiring리스트로 만들고 불러오기 했다.  발영어는 조심하시길..   아주 ~~~ 약간 덜 귀찮게 해주는 신박한 패키지. 2020. 1. 31.
[플러터] 신박한 패키지 - LiquidSwipe 모든 패키지는 신박하지만, 플러터는 뷰리풀 UI 프레임워크니까... 이런 패키지가 많아졌으면 한다.힘내라 개발자들!   - 빈 페이지로 테스트- 발영어는 항시 조심 2020. 1. 15.
[플러터] 백버튼 두번 눌러서 앱 종료하기 가끔 앱을 끌때, 한번 더 누르라는 토스트 또는 스낵바 메시지가 나오는 때가 있다.굉장히 단순한 기능인 줄 알았는데, 생각보다 구현하기 귀찮은 거였다... 구글링을 하다가 WillPopScope를 활용한 코드를 한번 테스트 해본다. * 혹시나 아래 영상을 보게 되시는 분이 있으시다면, 발영어는 항상 조심하길 바란다. 2020. 1. 4.
[플러터] 내 패키지 만들어서 사용하기(로컬,github) 패키지를 불러오는 일은 개발자들에겐 일상이겠지만,나같은 사람에게는 그것도 처음엔 생소하다.가끔 snippet 말고 내가 만든 함수를 불러올 수 있을까 생각했는데,생각처럼 어마어마한 작업이 아니라, 그냥 불러오면 되는거였다.로컬에 저장된 패키지와 깃허브에서 불러온 형태인데, 로컬 패키지를 불러오는 형태라면, 남들하고 같이 작업하긴 어려워지겠다. 하지만.. 난 혼자니까. 발영어는 조심하세요 2019. 12. 20.