Dev 309

Bluetooth 관련 정리

1. BluetoothGatt.discoverServices() 연결된 블루투스에 호출할 수 있는 서비스를 호출하는 기능이다. 해당 함수를 호출하면 블루투스 연결을 할때 등록해 놓은 BluetoothGattCallback 콜백 클래스의 onServicesDiscovered() 로 이벤트가 온다. private val bluetoothGattCallback = object : BluetoothGattCallback() { override fun onConnectionStateChange(gatt: BluetoothGatt?, status: Int, newState: Int) { ... } override fun onServicesDiscovered(gatt: BluetoothGatt?, status: In..

Dev/Android 2023.03.09

[Flutter] ListView.Builder 를 사용할때 주의할 점

ListView.builder or ListView.seperated 를 사용해서 리스트를 구현할때, UI 관점에서 주의할 점이 있습니다. ListView 를 생성해서 UI 만들어진 리스트를 보게되면 위 아래 공백이 생깁니다. 자세히 보다보니 ListView 에는 기본적인 Padding 값이 존재합니다. 그렇기때문에 Padding 값을 설정하고 ListView 를 만들어줘야 합니다. ListView.separated( shrinkWrap: true, padding: EdgeInsets.zero, itemCount: items.length, separatorBuilder: (BuildContext context, int index) => const SizedBox(height: 15), itemBuilde..

Dev/Flutter 2022.12.23

[Flutter] Border 테두리 - 라운드 사각형 디자인

플러터로 테두리에 라인을 그리는 형태의 박스를 디자인 하기 위해서 Container 위젯을 사용해도 되고, Card 위젯을 사용해서 구현하면 됩니다. Container( decoration: BoxDecoration( borderRadius: BorderRadius.circular(6), color: Colors.white, border: Border.all(color: color), ), padding: const EdgeInsets.only(left: 6, right: 6, top: 4, bottom: 4), child: item, ) Card( elevation: 0, margin: EdgeInsets.zero, shape: RoundedRectangleBorder( side: BorderSide(..

Dev/Flutter 2022.12.07

[프로그래머스] 자릿수 더하기 LV1 / kotlin

자릿수 더하기 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. 문제 링크 : https://school.programmers.co.kr/learn/courses/30/lessons/12931 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1차 시도 class Solution { fun solution(n: Int): Int { var answer = 0 if (n < 10) { answer = n } else { ..

Dev/Algorithm 2022.12.04

[Flutter] Mockito 를 이용한 테스트 코드 설정 방법

Mock 클래스 셋팅 방법 1. yaml 설정 dev_dependencies: flutter_test: sdk: flutter mockito: ^5.3.2 build_runner: ^2.3.2 2. 테스트 진행할 클래스 파일의 Mock 클래스 생성 class MainViewModelMock extends Mock implements MainViewModel {} 3. main() 함수 위에 Generate 선언 @GenerateMocks([MainViewModelMock]) void main() { .... } 4. 터미널에서 Mock 파일 생성 flutter pub run build_runner build 5. 테스트를 진행할 main() 함수에서 Mock 클래서 선언 및 호출 late MockMain..

Dev/Flutter 2022.11.25

[Flutter] Http 통신 @GET으로 Json 데이터 전송이 가능한가?

1. 기본적으로 HTTP 통신에서 GET 으로 JSON 데이터 전송 가능 기본적으로 HTTP 통신으로 GET 으로 JSON 데이터를 Body 에 싣어서 보내기가 가능한것 같습니다. https://stackoverflow.com/questions/978061/http-get-with-request-body HTTP GET with request body I'm developing a new RESTful webservice for our application. When doing a GET on certain entities, clients can request the contents of the entity. If they want to add some parameters (for example s.....

Dev/Flutter 2022.11.23

[Flutter] 라운드 형태 TextFiled 만드는 방법

Radius 값을 준 라운드 형태의 텍스트 필드를 구현하기 위해서 Card 위제을 사용해서 shape 에 Border 값을 주면 됩니다. Card( elevation: 0, shape: RoundedRectangleBorder( side: BorderSide( color: Theme.of(context).colorScheme.outline, ), borderRadius: const BorderRadius.all(Radius.circular(12)), ), child: const SizedBox( width: 300, height: 100, child: Center(child: Text('Outlined Card')), ), ) 여기서 기본적으로 Card 위젯은 기본 margin 값(4)을 가지고 있다는것..

Dev/Flutter 2022.11.15

파이썬 - PDF 파일 읽기

Python 으로 PDF 파일을 읽을 수 있게 도와주는 라이브러리 pdfplumber 를 사용했습니다. github 에서 Star 를 봤을때 충분히 사용할만하다고 판단이 되어서 사용합니다. import pdfplumber import os # 스크립트가 있는 루트 폴더 경로 ROOT_DIR = os.path.dirname(os.path.abspath(__file__)) # 루트폴더에 들어있는 test.pdf 읽기 with pdfplumber.open(ROOT_DIR + "/test.pdf") as pdf: for index in range(len(pdf.pages)): print(pdf.pages[index].extract_text()) 참고 : https://github.com/jsvine/pdfplu..

Dev/Python 2022.11.14