오늘도 빡세게 코딩을 하며 시간을 보냈다. 하나하나 배운걸 말하기에는 너무나 부족한 시간.. 조금씩 나누어서 짧게 짧게 정리하기로 했다. 사실 오늘 이 기능을 알기 전까지, 이런 기능이 있었으면 좋겠다는 생각을 했다. 텍스트가 바뀔때마다 무언가 실행되는 메서드는 없을까? 하고 말이다. 사실 API문서 읽는 것도 서툰 나로써는 누군가에게 물어보거나 우연히 구글링 중 발견한 기술들이 전부기 때문이다. 하지만 이제 API문서는 완벽하진 않지만, 어느정도 읽고 있다. 이야기가 길어졌다. TextWatcher를 한번 살펴보자 사용법 textView.addTextChangedListener(new TextWatcher() { @Override public void beforeTextChanged(CharSequen..
뜨문뜨문 글을 쓰게 된다. 요즘 급속도로 앱에 대해서 배우고 있는 중이다. 중요하게 생각되고, 다음에도 쓸 것 같은 기능을 위주로 글을 쓰려한다. 아무래도 시간은 유한하기 때문에 모든 정보를 쓰는 데에는 한계가 있음은 확실하다. phpmyadmin 이란 sql을 편리하게 관리할 수 있는 php로 만들어진 그래픽 사용자 인터페이스이다(GUI). 한 달 전쯤 로그인 기능을 구현 중에 phpmyadmin을 다루는 법을 배워서 편하게 쓰게 되었다. 동시에 sql문으로 테이블도 짜면서, 한 층 더 성장하는 계기가 되었다. 오늘은 저번 시간에 배운 putty를 이용하여 AWS ec2 인스턴스를 만들고, 서버를 연동해서 phpmyadmin까지 만들어 보았다. 2021/02/28 - [Programing/AWS] - ..
하하 오늘 자바의 정석 강의 영상에서 얻은 영상 중에서 캡처한 사진이다. super() 메서드가 이해가 잘 안 갔었는데, 정말 이해가 잘 가는 영상이다. 보통은 부모한테 상속받은 자식 클래스안에 메서드 인자가 부모 클래스에도 있을 때, 사용하는 것이라고 한다. 밑에 super(x, y)처럼 표기해주면 된다. 아무튼 오늘은 이 사실도 배웠지만, 더 중요한 것을 해보려고 한다. 보통 fragment 끼리 정보를 전달할 때는 보통 번들을 사용하지만 실험을 해본 결과 Viewpager위에 프래그먼트 끼리 번들로 데이터 전송이 안된다.(방법이 있을 것인데, 아직 내가 초보라 모르겠다.) 그러다가 ViewModel을 이용한 데이터 전달 방법을 알게 되었다. 해결법 우선 저번에 사용하던 뷰 페이저를 똑같이 응용하겠습..
오늘도 열정적으로 개발하는 자팍이입니다. 오늘 배웠던 이 타이머는 어디서도 구하지 못해.. 직접 물어보고, 한참을 보다가 구현해낸 누군가에겐 별거 아니지만, 저에게는 값진 발견입니다.. 헤헤 금연 타이머 앱을 만들던 중.. 어떻게 하면, 입력한 시간과 날짜대로, 시간이 입력될까? 라는 생각이 들었습니다. 커뮤니티에 물어보니, 날짜나 시간을 계산하고, 그것을 초(밀리세컨드)로 변환하면, 그것이 가능하다고 했습니다. 하지만 처음에는 도저히 이해가 되지 않았습니다. 우선 예제를 보여드리겠습니다. 이 기능을 사용하시지 않더라도, 예제에 포함된 Calculate_Date.java안에 날짜 차이 구하기, 시간 차이 구하기, 현재 날짜와 시간 나타내는 메서드가 있으므로, 잘 활용하시길 바랍니다. 코드들 MainAct..
일단 제목이 어렵다. 이게 무슨 소리인가 할 수도 있겠다. 해답을 겨우 찾을 수 있어서 다행이었다. 아무리 찾아도 스택오버플로우에도 가도 알 길이 없던 중에, 콜백 리스너!라는 방법을 알게 되었고, 바로 사용을 해보았다. 우선 나는 자바에 대한 지식이 깊지도 않고, 안드로이드에 대해 아직 공부한 지 3달이 조금 넘은 새내기라 정확하지 않을 수도 있다는 점을 명시한다. 우선 상황은 이러했다. 스택오버플로우에 올리기 위해서 영어로 썼던 것이다. 우선 상황은 이러했다. 프래그먼트에서 뷰 페이저를 두고 그 위에 여러 가지 프래그먼트가 있는데, 다이얼로그에서 버튼을 클릭하면, 저 뷰 페이저에 프래그먼트로 내용이 전달되는 액션을 취하려고 했다. 다이얼로그에서 프래그먼트로 전달하고, 프래그먼트로 전달도 해보고, 어뎁..
서론이 길어서 급하신 분들은 구분선부터 봐주세요! 꽤나 오랜만에 글을 쓴다. 요즘 프로젝트를 만드느라 정신이 없기 때문이다. 거의 매일 일기를 쓰다시피 했는데, 이제는 일기 쓰는 시간에도 코딩을 하고 싶어서, 일기를 자연스레 쓰지 않았던 것 같다. 그러다가 문득 영상을 보았는데, Today I Learned라고 오늘 나는 무엇을 배웠는지, 기록해나가는 연습이라고 한다. 이게 참 좋은게 복습을 하는 중요한 효과로 작용을 할 거라는 기대를 한다. 그냥 단순히 개발 포스팅보다는 정확하진 않더라도, 내가 나중에 누군가에게 설명하고 배운 것을 정리할 수 있는 시간이 되었으면 한다. Fragment 만들기 본론으로 넘어가겠다. 우선 나 같은 경우는 프로젝트를 만들던 도중 프래그먼트 위에서 뷰 페이저를 사용해서 또 ..
The device needs more free storage to install the application (extra space is needed in addtion to APK size). 갑자기 이런 오류가 떴다. 무엇이 문제일까? 보아하니 안드로이드 예물 레이터에 대한 내용인 거 같다. (device)에서 유추... 구글링을 해보니 용량이 부족하면 발생한다고 한다. 역시 항상 C드라이브나 D드라이브의 용량을 많이 확보해두는 편이 좋을 듯싶다. 사실 간단한 방법은 에뮬레이터를 삭제했다가 다시 설치하는 방법이다. 하지만, 매번 이럴 수도 없고... 하지만 방법은 있다. C:\Users\[사용자]\.android\avd\Pixel_2_API_30.avd\userdata-qemu.img 다음과 같은 ..
오늘도 여느 때와 마찬가지로 코딩하기 딱 좋은 날씨였다. 물론 독서실에 있어서 날씨에 영향을 받진 않지만 말이다. 평소처럼 Do it 안드로이드 앱 프로그래밍을 들었다. 오늘은 Intent에 대한 내용을 듣고 있었고, 선생님의 강의를 듣고, 책을 읽고 실습을 하는데, 아니 이런.. 역시나 오늘도 오류가 발생하였다. 원래는 이렇게 만들려고 했었다. 원래는 이렇게 번호를 데이터를 넣고, 버튼을 누르면 저런 식으로 통화 버튼 입력창에 데이터가 가능 방식이었다. 정말 멋진 기능이었다. 코드는 아래와 같았다. 잘 안 보이는 분들을 위해 코드를 써 드리겠습니다. 우선 xml코드다. 그리고 java코드다. package org.techtown.samplecallintent; import androidx.appcomp..
안드로이드 스튜디오에서 push를 하려는데 다음과 같은 에러가 발생했다. 로그를 보니 Please make sure you have the correct access rights and the repository exists. 라고 써져 있는데, 해석해보면 올바른 액세스 권한이 있는 저장소가 있는지 인증해달라는 뜻인 거 같다. 다음과 같이 해결해보자. 해결법 첫째로 말씀드릴 것은 안드로이드 스튜디오가 아닌, 다른 깃 프로그램이나 에디터에서도 가능하니 시도해보시기 바랍니다. (전부 다가 아닐 수도 있습니다) SSH and GPG Key를 클릭하고, -> New SSH Key를 클릭한다. 아래 그림 순서대로 들어가 보자. 난 이미 만들어서 있다. 저 빨간 동그라미를 클릭하자. 자 여기까지 하고, (깃허브 창..
안녕하세요. 오늘은 Android Studio에서 백업을 하는 방법에 대해서 이야기해보려고 합니다. 먼저 여러 시도를 해보고 싶은데, 시도를 해보기 앞서, 혹여나 시도를 하고 나서, 에러가 뜨는 골치 아픈 상황이 생길 수도 있습니다. 이러한 상황을 이용해서 저희는 Export와 Import를 사용할 것입니다. Export : 내보내기 Import : 가져오기 백업하는 법 우선, 저는 안드로이드 스튜디오 Version 4.1.1 버전을 사용하고 있습니다. 아마도 다른 버전에서도 Import와 Export는 있기 때문에, 버전에 따라 위치가 그리 차이 나진 않을 것입니다. File -> Manage IDE Settings -> Export to Zip File을 클릭해주세요. 우선 우리가 백업하고 싶은 프로..
오늘은 안드로이드 스튜디오에서 커스텀 폰트를 적용하는 법을 알아보고자 한다. 우선 눈누같은 무료 폰트 사이트에서 폰트를 다운로드 해준다. https://noonnu.cc/ 상업적 이용 가능한 무료 한글 폰트 모음 사이트 눈누 상업적으로 이용할 수 있는 무료 한글 폰트를 모아 놓은 사이트 눈누 noonnu.cc 원하는 폰트를 클릭해서 다운을 받는다. 저 버튼을 눌러 다운을 받는다. HTML로 웹을 만든다면, 웹폰트를 복사 붙여넣기 하면 되지만, 우리는 안드로이드의 적용하기 때문에 다운로드를 누른다. 들어가서 OTF로 다운로드 받는다. 다운 받은 후에는 압축을 풀고 폰트 파일명을 소문자로 바꿔준다. (대문자로 하면 오류가 난다.) font디렉토리 만들기 res폴더에 마우스 오른쪽 버튼을 누르고, new ->..
Android Studio에서 이클립스처럼 컴파일이 가능할까? 정답은 가능하다. 사실 나도 안드로이드 스튜디오를 시작한 지 얼마 안돼서 잘 모르지만, 컴파일이 가능하다고 한다. 이 사실을 몰라서 이클립스를 깔고 필자는 자바를 공부하려고 했는데, 커뮤니티에서 이클립스 안깔고 안드로이드 스튜디오에서도 자바문 컴파일해서 공부할 수 있다는 글을 보았다. 재빨리 실행해 보았다. 우선 새로운 프로젝트를 만들자. 프로젝트는 어떻게 만들든 상관없지만, 필자는 No Activity로 만들고, Language를 java로 설정하고 Finish버튼을 눌러서 프로젝트를 만들었다. 그 후 xml파일은 필요 없으니 닫아두고, java파일만 놔둔다. (필자는 기존 MainActivity.java를 삭제하고, 보기 쉽게 java.j..