소소한 코딩 이야기/My Project Story (12) 썸네일형 리스트형 Checkbox를 이용한 체크리스트 만들기(50% 완료) ● 새 항목 추가에 내용 입력 후 추가버튼을 누르면 RecyclerView에 새로 추가 된 List가 반영 됨 ● 동시에 로컬 DB에 Insert 됨 -> ViewModel, LiveData로 리스트 갱신 ● 리스트에서 체크박스를 누르면 해당 Content에 취소선이 반영되도록 RecyclerView에서 setOnCheckedChangeListener를 적용 ○ 체크박스를 클릭했을 때 로컬 디비의 status도 동시에 수정되도록 구현 중 ○ 체크박스를 다중 선택하여 선택 된 리스트만 삭제 할 수 있도록 구현 예정 ○ 전체 삭제 버튼을 클릭 시 모든 리스트가 지워지도록 구현 예정 ○ Content의 휴지통 모양의 버튼을 클릭 시 해당 내용만 삭제되도록 구현 예정 로컬 DB에 데이터 저장하기 성공!!! + 지금까지 프로젝트 진행도 위 영상은 현재까지 진행된 어플을 화면녹화 해 본 것입니다. 가장 애를 먹었던 Room을 활용한 로컬 DB저장까지 모두 완료 하였고 현재 세부페이지를 제작 중에 있습니다. [사용언어] - Kotlin [사용도구] - Android Studio - Vectornator (Icon 및 Logo 제작 시 사용) [구현기능] 1. Splash Screen 2. RecyclerView(feat. CardView) 3. Spinner를 이용한 Select메뉴 4. Material Design Library를 이용한 EditText 구현 5. DatePicker Dialog를 이용한 날짜선택 6. LiveData, ViewModel, Room 을 이용한 로컬 DB 구현 Kotlin과 Android Studio모두 유.. 가계부만들기 다시 처음부터!!! 개인 프로젝트로 진행중이던 가계부를 처음부터 다시 리빌딩 해보기로 했습니다. 처음 기획했던 레이아웃은 일반적인 웹페이지 형식이었는데.. 막상 진행하면 할 수록 PC와 모바일에서 반응형으로 사용하기에는 한계가 뚜렷하게 보이는 레이아웃 구성이다보니 더이상 진행을 할 수가 없다는 결론에 이르렀습니다. 무엇보다 배운 틀 안에서만 응용하고 있다보니 발전이 보이지 않아 새로운 시도를 해보는것도 좋겠다는 생각도 들었습니다. 완성은 9월 15일을 목표로 잡고있으며, 다시 마음을 다잡고 프로젝트 진행결과를 포스팅해보겠습니다! Spring Boot properties 우선순위 주기 Spring Boot에서 MySQL로 연결을 시도하는 과정에서 계속 에러가 나서 MySQL을 몇번을 깔았다 지우기를 일주일... 드디어 문제를 해결했습니다!!!!!!!!!!!!!(감격 ㅠㅠㅠㅠ) 우선 제가 마주했던 에러코드는 아래와 같습니다. java.sql.SQLException: Access denied for user ''@'localhost' (using password: YES) 해당 에러에 대해 검색해 보면 보통은 MySQL의 비밀번호가 틀려서 그렇다. MySQL이 멋대로 비밀번호를 잃어버린다. 임시비밀번호를 찾아서 그걸로 로그인한담에 다시 비밀번호를 바꿔줘야 한다. 등등의 글을 찾을 수 있었습니다. 이를 해결하기 위해 MySQL 수동설치, 재설치, 보안단계를 낮춰서 설치 등등 다해봐도 해결되.. vue/cli axios를 이용하여 백엔드 통신하기(회원가입) 이번에는 axios를 이용하여 백엔드 통신을 해보았습니다. 회원가입 화면에서 Sign In 버튼을 클릭하면 spring boot의 Controller를 통하여 VO에 form값을 주입하도록 하였습니다. 우선 코드를 작성하기에 앞서 axios를 설치해 주었습니다. 1. vue/cli axios plugin 설치 vue add vue-cli-plugin-axios 기존에는 npm install axios 로 설치하는 방법만 찾을 수 있었는데, vue/cli인 경우에는 어떻게 설치해야 하나 찾아보니 플러그인을 직접 설치하는 방법이 있었습니다. plugin으로 설치 시 main.js에 수동으로 추가해주어야 하는 vue.use( )를 자동으로 생성해줍니다. //axios.js Plugin.install = fun.. [CashBook Project] 1. 계산기 구현하기 (수정) 현재까지 구현 된 계산기의 모습 입니다. 계산기의 기본적인 동작 코드는 여러 해외 유투브 영상을 참조하였으며, 디자인 및 기타 코드를 덧붙여 보는 형식으로 진행하고 있습니다. 앞서 올렸던 포스트 상의 계산기는 기본기능만 갖췄었다면 현재는 위 코드와 같이 계산기에 입력한 공식을 눈으로 볼 수 있도록 input 태그를 추가하여 v-model로 바인딩 해 주었습니다. 숫자 버튼 및 연산과 관련한 버튼도 테이블 태그를 이용하여 구현하였으며, @click 이벤트를 통하여 methods에 선언된 메소드가 실행될 수 있도록 하였습니다. 지금 상태에서도 연산기능을 사용하는 것은 모두 가능하지만 한가지 아쉬운점은 아래 코드와 같이 진행을 할 경우 연산기록을 표시하는 과정에서 연산을 연달아 누르면 기존의 연산이 바뀌는 것.. 계산기 기능 추가 진행중..! 원래는 가계부를 작성하는 과정에서 팝업으로 띄우고자 했던 계산기를 하나의 페이지로 만들어 보았습니다. (추후 작성 시 팝업으로도 쓸 수 있는 계산기를 추가 할 예정입니다.) 현재 계산기의 기본적인 기능은 모두 구현이 되었지만 숫자나 연산식을 눌렀을 때 어떠한 값을 눌렀는지도 계산기 디스플레이 부분에 보여줄 예정입니다. 또한 아직 어떤식으로 구현이 가능할지 생각중인 계산기록영역도 추가적으로 구현 해 볼 예정입니다. 처음에는 계산기를 어떻게 만들어야 할 지 막막했지만 유튜브영상을 차근히 따라하다보니 생각보다 간단하게 만들 수 있었습니다. 이제 부가적인 기능들은 스스로 개발을 해 봐야 하는데... 제발 생각대로 성공 할 수 있었으면 좋겠습니다. ㅠㅠ [Web Cashbook Project] 화면 구성잡기 30%완료. 드디어 첫 발을 내딛다. JAVA + JSP + SPRING + Oracle DB 로 프로젝트를 진행 할 때는 1~2시간이면 MVC2 방식으로 모든 페이지의 링크를 안정적으로 연결하고 로그인, 회원가입 기능까지 구축이 가능했는데... 그 때와는 달리 vue.js + spring-boot + mysql을 이용하여 이 화면을 만들기까지.. 정말 많은 시간이 걸린 것 같습니다. 참 단순한 헤더, 푸터, 그리고 컨텐츠 페이지들인데.. 이걸 연결하는데까지 이렇게 오래걸릴것이라고는 처음 시작할 때만해도 상상도 못했습니다 ㅠ 물론!!! 이건 진짜 빙산의 일각의 일각일 뿐! 아직 갈길은 멀지만 ㅠㅠ 그래도 첫 발을 떼었다는 것에 잠시 혼자서 감동의 시간을 보내고 있습니다 ㅎㅎ 현재 지금까지의 페이지는 아래의 개발환경으로 만들어졌으며, 추후 다.. 이전 1 2 다음