프로그래밍(92)
-
Flutter에서 서버 데이터로 동적 TextField 관리하기 : 개선된 사용자 입력 솔루션
문제 상황 서버로부터 랜덤한 갯수의 데이터를 받아서 ListView.Builder를 통해 만들어진 TextField의 값으로 넣어야 하는 상황으로 2가지 문제가 있다 TextField를 TextFormField로 바꾸고 initialValue로 사용시 처음 출력은 잘 되지만 해당 리스트를 삭제했을 때 문제가 발생한다 (데이터는 변경이 되지만 초기 값이라서 화면단에 적용이 안됨) 각 TextField를 TextEditingController로 관리하자니 랜덤한 갯수의 데이터를 받기 때문에 모두 준비할 수가 없다 해결 방안 TextField를 Stack위젯으로 감싸고 유저가 상호작용할 수 있는 Container를 TextField위젯의 위에 배치한다 String형태의 flag변수를 하나 선언하고 기본값으로 ..
2024.04.02 -
참조에 의한 할당 (Reference Assignment) 문제 (Flutter)
참조에 의한 할당 (Reference Assignment) List A의 값을 할당받는 List B의 값을 변경하면 A와 B 두 리스트 모두의 값이 변하는 문제 var listA = [{'name': '민수'}]; var listB = listA; listB[0]['name'] = '철수'; print(listA[0]['name']); // '철수' 출력 왜 이런 문제가 발생하는거야? List B가 ListA를 참조하고 있다면 메모리의 같은 주소를 바라보고 있기 때문에 한 리스트에서의 변경이 다른 리스트에도 영향을 미친다, 이것은 '얕은 복사'(shallow copy)라고도 불리며 객체나 리스트를 다룰 때 흔히 발생하는 문제이므로 조심해야한다 이 문제를 해결하기 위해서는 각 리스트가 독립적인 리스트가 되..
2024.04.01 -
탭탭카드놀이) 개선 사항
1. 오디오 버튼을 아이콘으로 변경 개선 이유 ? 오디오 재생버튼이 유저의 눈에 안보이는 방식이 오히려 앱을 어렵게 만듬 개선 방법 ? 시각적으로 보이는 아이콘을 통해 오디오를 재생하도록 변경 2. 메뉴바 액션 추가 개선 이유 ? 메뉴바를 눌러서 메뉴창을 띄우는게 더 직관적이고 사용성을 높이는 방법이라고 판단 개선 방법 ? 메뉴바와 메뉴바 두 곳에 액션을 추가해서 사용성을 높였음 3. 숫자카드 메뉴버튼 슬라이드 불편함 해결 개선 이유 ? 숫자카드 메뉴모달창에서 슬라이드를 하려고 하는데 버튼이 눌러지는 문제 발생했고 버튼과 목록을 나누기로 결정했음 개선 방법 ? 버튼 크기를 줄여서 좌측에 배치함으로써 해결
2022.05.25 -
POMOTODO) 유저수 증가 및 첫 GitHub Folk
POMOTODO 배포 이후에 천천히 유저수가 증가했다 현재 나를 제외한 39명의 유저가 있고 실제 서비스를 이용하는 유저는 20~25명 정도로 확인된다 GitHub에서 하나의 Star와 Folk를 받을 수 있었다 작은 숫자들이지만 내가 운영하는 서비스를 이용하는 유저가 늘어난다는 경험이 정말 감사하고 뿌듯했다 내가 직접 사용하며 느낀 개선해야 할 부분도 많기 때문에 조금씩 유지보수를 해야겠다고 생각했는데 수치로 확인을 하니깐 더 좋은 서비스로 보답을 해야겠다는 생각과 함께 앞으로도 여러 사람에게 도움이 되는 결과물을 만들어야겠다는 생각을 했다
2022.05.19 -
React Native) iamport 결제검증 로직 구현하기
https://coqoa.tistory.com/145 ReactNative)Expo 인앱결제 (I'mport이용) Expo를 이용해서 개발을 진행해왔고 인앱 결제를 구현해보려고 하는데 제약사항이 많았다 I'mport를 이용하면 기능 구현이 가능하다는 정보를 입수했고 문서를 먼저 정독했다 그동안 실제 결제 관 coqoa.tistory.com 위에서 이어지는 글이다 결제가 완료된 이후에 결제금액을 서버에 저장되어 있는 값과 대조 및 검증하는 로직 구현이 필요하다 링크 import {React, useState, useEffect} from 'react'; import styled from "styled-components/native"; import auth from '@react-native-firebas..
2022.05.19 -
ReactNative) Expo-av 예제, 이슈발생 및 해결법
https://docs.expo.dev/versions/latest/sdk/audio/ Audio - Expo Documentation Expo is an open-source platform for making universal native apps for Android, iOS, and the web with JavaScript and React. docs.expo.dev 버튼을 누르면 클릭음이나 동물의 소리, 정답과 오답에 따른 등 다양한 소리를 출력해주는 기능이 필요했다 Expo-av 모듈으 사용하며 겪은 이슈와 해결법을 포함한 사용예제를 작성한다 설치 expo install expo-av 사용 import { Audio } from 'expo-av'; ..// const sound = new A..
2022.05.19