맥에서 종종 특정 파일을 터미널에서 실행시키려 할때 터미널을 열어 해당 폴더를 찾아가는 불편한 방식을 이용해요. 물론 여러가지 편한 방식도 있지만, 제가 사용하는 openinterminal 프로그램을 소개해 드릴게요. 아래처럼 파인더의 메뉴를 통해 바로 해당 파인더 위치에서 터미널을 열수 있어요!! 자 그럼 설치하로 가볼게요!! 설치 방법은 아주 간단해요. 아래 명령어를 터미널에 입력하고 기다리면 프로그램이 설치가 돼요. brew 명령어가 동작을 안한다면, 따로 brew 설치를 하고 다시 명령어를 입력해 주세요. brew install --cask openinterminal 설치가 완료되면 launchpad 에 openinterminal이 보일거에요 이걸 실행 시켜주세요. 마지막으로 1. 시스템설정 ->..
스프링 실습 도중 H2를 설치할 일이 생겨 메모를 해두어요. 먼저 아래 사이트에 접속하여 그림 1에 보이는 Download 에서 자신의 OS 에 맞는 설치 프로그램을 다운 받아요. https://www.h2database.com/html/main.html H2 Database Engine H2 Database Engine Welcome to H2, the Java SQL database. The main features of H2 are: Very fast, open source, JDBC API Embedded and server modes; in-memory databases Browser based Console application Small footprint: around 2.5 MB jar f..
오늘 살펴볼 라이브러리는 table_calendar 에요. 프로젝트를 진행하면서 캘린더를 커스텀해서 사용할 일이 생겼는데, 생각보다 기능이 다양해서 정리를 해두려해요. 자세한 정보는 아래 사이트에 들어가셔서 확인 가능해요 https://pub.dev/packages/table_calendar table_calendar | Flutter Package Highly customizable, feature-packed calendar widget for Flutter. pub.dev 라이브러리 추가를 해줘요. pubspec.yaml table_calendar: ^3.0.9 weekNumbersVisible: true, 아래 그림에 빨간색 원에 안에 숫자를 보여줄지 설정하는 변수에요 해당 연도에 몇주차 인지 표..
setState()는 StatefulWidget 에서 특정 오브젝트의 상태(값)를 변경하기 위해 사용하는 메소드에요 . 근데 이번에 showModalBottomSheet에서 요일을 선택하는 기능을 가진 화면을 작업하다가 setState 를 통해 상태 변경을 호출해도 화면이 변경되지 않는 현상을 발견했어요. 아래는 문제의 코드에요 showModalBottomSheet( context: context, builder: (context) { return Container( height: heightOfModalBottomSheet, child: RaisedButton(onPressed: () { setState(() { heightOfModalBottomSheet += 10; }); }), ); }); 아래는..
플러터로 개발을 하던중 서버쪽에서 알림에 이모지를 보여주고 싶다는 요청이 들어왔어요. 그와 동시에 알림 리스트 에 unicode 를 넣어서 내려 보내주기 시작했어요. 플러터 Text Widget 에서 유니코드 문자를 사용하려면 아래와 같은 형식으로 사용을 해야지만, Text("Is test. \u{1f60e}"} 클라이언트 개발자와 어떠한 협의도 없이 아래처럼 String 데이터를 내려 주는거에요........ U+1F389 나는 U+1F389 프로그래머에요 당연히 Flutter 에서는 지원하지 않는 형식이므로 원하는 형태로 보이지 않았고, 결국 유니코드 캐릭터가 포함된 값을 찾아서 플러터에서 인식할 수 있는 형태로 바꿔주는 방식을 직접 구현하게 되었어요. String unicodeContainStrin..