분류 전체보기 889

안드로이드 RecyclerView Grid 형태로 쓸 때 아이템들 가로세로 크기 동일하게 만드는 방법. ViewTreeObserver.OnGlobalLayoutListener(), getTreeViewObserver()

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!!포스팅 내용이 찾아주신 분들께 도움이 되길 바라며더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^ 안드로이드에서 RecyclerView는 자주사용되는 컨테이너인데요. 1 to 50 게임같은 가로세로 높이가 같은 아이템들이 있는 RecyclerView를만들 때 RecyclerView의 가로세로 높이를 구해서 1/n을 하면아이템들의 높이를 맞출 수 있는데요.여기서 동적으로 RecyclerView의 가로세로 높이를 구하는 코드를소개하려 합니다.12345678910recyclerView.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {..

안드로이드 2018.12.03

안드로이드 이미지 때문에 액티비티 로딩속도가 느릴 때 간단한 해결방법

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!!포스팅 내용이 찾아주신 분들께 도움이 되길 바라며더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^ 안드로이드 xml에 이미지가 많이 들어가게 되면 액티비티 로딩 시에이미지가 없을 때랑 차이가 많이나는 걸 느끼실 수 있는데요. 간단한 해결방법이 있습니다.바로 xml에 src나 background에 @drawable/... 으로 넣지 않고자바코드로 이미지를 로드하는 건데요.여기서 사용되는 메소드는 setBackgroundResource나 setImageResource가 아니라setImageDrawable입니다.setBackground라는 메소드도 있지만 API16에서 Deprecated 되었기에 쓰지 않습니다.사용법은 간단합니다.12345ImageVi..

안드로이드 2018.11.30

안드로이드 1to50 게임을 만들어봤습니다.

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!!포스팅 내용이 찾아주신 분들께 도움이 되길 바라며더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^ 안드로이드 1to50 게임을 만들어봤습니다.RxJava를 사용해서 타이머를 구현해봤습니다. 5 x 5 판은 RecyclerView에 GridLayoutManager를 set 해서 만들었고,터치 이벤트는 item들의 좌표를 구해서 좌표에 해당하는 position이선택되도록 만들었습니다.데이터바인딩도 사용했습니다.사이즈는 대충 만들었기 때문에 사용하실 분들은 본인 스크린사이즈에 맞게사용하셔야 합니다.java 파일MainActivity.java1234567891011121314151617181920212223242526272829303132333435363..

안드로이드 2018.11.29

Gson get("key") 값이 null일 때 처리 방법

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!! 포스팅 내용이 찾아주신 분들께 도움이 되길 바라며 더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^ Gson을 사용하고 있었는데요. {"key" : null} 처럼 값이 오는 경우가 있어서 해결방법을 찾느라 꽤나 시간을 써버렸습니다 ㅎㅎ Gson 함수로 제공하고 있었는데 말이죠;;; 처리방법 json 형식의 문자열을 받았다고 가정합시다. String response = "{\"key\" : null}"; JsonParsor parser = new JsonParser(); JsonElement element = parser.parse(response); String object = element.getAsJsonObject().get("key");..

자바 2018.11.22

안드로이드 애니메이션 확대 애니메이션 expansion, 축소 애니메이션 reduction

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!!포스팅 내용이 찾아주신 분들께 도움이 되길 바라며더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^ 안드로이드 애니메이션 중 확대, 축소 애니메이션 구현하는 방법입니다. 먼저 res 디렉토리에 anim 디렉토리를 만듭니다. 그리고 그 안에 expansion.xml 과 reduction.xml을 만들고 아래 코드들을 각각 추가합니다. expansion.xml reduction.xml 위 코드를 보면아시겠지만 from -> to 입니다.사이즈는 원하는 크기만큼 쓰시면 됩니다.duration은 애니메이션 시간입니다. 저처럼 200으로 하면 0.2초간 진행됩니다.pivot은 중심점으로 x, y를 각 50%로 주면 기준점이 요소의 중앙이 됩니다. 적용 방법I..

안드로이드 2018.11.19

프로젝트 오일러 17번 문제 : 1부터 1000까지 영어로 썼을 때 사용된 글자의 개수는?

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!!포스팅 내용이 찾아주신 분들께 도움이 되길 바라며더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^ 정말 오랜만에 프로젝트 오일러 문제를 풀어봤는데요 ㅎㅎ17번 문제입니다. 1부터 5까지의 숫자를 영어로 쓰면 one, two, three, four, five 이고, 각 단어의 길이를 더하면 3 + 3 + 5 + 4 + 4 = 19 이므로 사용된 글자는 모두 19개입니다.1부터 1,000까지 영어로 썼을 때는 모두 몇 개의 글자를 사용해야 할까요?참고: 빈 칸이나 하이픈('-')은 셈에서 제외하며, 단어 사이의 and 는 셈에 넣습니다. 예를 들어 342를 영어로 쓰면 three hundred and forty-two 가 되어서 23 글자, 115 =..

안드로이드 Dialog 외부 영역 투명하게 만들기

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!!포스팅 내용이 찾아주신 분들께 도움이 되길 바라며더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^ 이번 포스팅에서는 다이얼로그의 외부 영역을 투명하게 만드는 코드에 대해알아보겠습니다. 다이얼로그를 만들면 기본적으로 다이얼로그 외부 영역이 반투명하게보여지는데요. 이 반투명 영역을 투명하게 하고 싶을 경우가 생길 수 있겠죠? 코드는 매우 간단합니다.아래처럼 다이얼로그를 생성할 때MenuDialog dialog = new MenuDialog(activity); dialog.setActivity(activity); if(dialog.getWindow() != null) { dialog.getWindow().setBackgroundDrawable(new C..

안드로이드 2018.11.08

안드로이드 Dialog 생성 시 Context 인자에 getApplicationContext() 사용 시 에러 발생

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!!포스팅 내용이 찾아주신 분들께 도움이 되길 바라며더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^ 안드로이드에서 다이얼로그를 만들 때생성자에 Context context 인자가 있어서꼭Dialog d = new Dialog(this);이런 식으로 넣어줘야 합니다. 그런데 인자가 context이다보니getApplicatonContext() 를 넣는 경우가 있는데요.넣게 되면Unable to add window -- token null is not for an application에러가 발생하게 됩니다.때문에 this 를 넣어주거나 클래스이름.this를 넣어줘야 합니다.또는 context 대신에 activity를 넣어도 되니다.private Activ..

안드로이드 2018.11.07

다이얼로그 외부 터치 안되게, 배경 투명하게 만들기

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!!포스팅 내용이 찾아주신 분들께 도움이 되길 바라며더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^ 저는 커스텀 다이얼로그를 만들었지만 방법은 같습니다.CloseDialog dialog = new CloseDialog(this); if(dialog.getWindow() != null) dialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); dialog.setCancelable(false); dialog.show(); 안드로이드 외부터치 안되게dialog.setCancelable(false); 배경 투명하게dialog.getWindow().setBackgroundD..

안드로이드 2018.11.05

라즈베리파이 WIFI 연결하기 연결하는 법

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!!포스팅 내용이 찾아주신 분들께 도움이 되길 바라며더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^ 라즈베리파이에 무선 인터넷을 연결하는 방법입니다. 1. 라즈베리파이에 라즈비안이 설치되어 있어야 합니다.2. GUI를 볼 수 있도록 모니터도 연결해줍니다.첫 번째 실제 ssid 비밀번호 대신 암호화된 비밀번호를 사용해여 하는데,암호화된 비밀번호를 알아내는 방법입니다.wpa_passphrase ssid password 를 입력하면 아래처럼 나옵니다.그대로 복사해서 sudo nano /etc/wpa_supplicant/wpa_supplicant.conf 명령으로/etc/wpa_supplicant 디렉토리 안에wpa_supplicant.conf 파일을 열어..