일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
- 막내의막무가내 목표 및 회고
- 막내의막무가내
- 2022년 6월 일상
- 막내의막무가내 일상
- 막내의막무가내 SQL
- 막내의막무가내 안드로이드 에러 해결
- 막내의막무가내 코볼 COBOL
- 막내의막무가내 플러터 flutter
- 주택가 잠실새내
- flutter network call
- Fragment
- 막내의막무가내 rxjava
- 막내의 막무가내 알고리즘
- 막내의막무가내 플러터
- 막내의막무가내 알고리즘
- 안드로이드 sunflower
- 막내의막무가내 안드로이드 코틀린
- 안드로이드
- 막내의막무가내 안드로이드
- 안드로이드 Sunflower 스터디
- 주엽역 생활맥주
- 막내의 막무가내
- 부스트코스에이스
- 막내의막무가내 코틀린 안드로이드
- 부스트코스
- 막내의막무가내 코틀린
- 프로그래머스 알고리즘
- 프래그먼트
- 막무가내
- 막내의막무가내 프로그래밍
- Today
- Total
목록전체 글 (687)
막내의 막무가내 프로그래밍 & 일상
ArrayList나 사용자가 만든 객체를 액티비티끼로 서로 전달하고 받는 과정을 예제로 기록해본다.기본타입이 아닌 리스트 또는 객체를 받아올때 단순 get000Extra로 받아올 수 가 없다. *메인액티비티( ArrayList 값과 SimpleData라는 내가 만든 객체를 전달해준다. intent.putExtra로 기본타입과 보내는 방식은 똑같으나 받는 방식이 나중에 보면 다르다. )Intent intent = new Intent(getApplicationContext(), MenuActivity.class); ArrayList names = new ArrayList(); names.add("김진수"); names.add("황수연"); intent.putExtra("names", names); Simpl..
안드로이드 프로그래밍을 하다가 모든 R이 빨갛게 에러가 날 때가 있다. 원래 잘됬다가 갑자기 R이 다 빨게지면서 에러표시가 뜨는걸 처음 본 경우 당황 할 수 가 있다. ( 나도 처음에 JDK경로 잘못했나 싶었다. 바꾼적도없는데) 그럴때는 xml을 한번 보길 바란다. xml에서 실수를 하거나 잘못 쓴 경우 R에러가 뜨는 경우가 있다. xml 레이아웃을 열어 에러표시가 있나 확인하고 수정해주자. 그 후 안드로이드 스튜디오 툴바에서 Bulid -> Rebulid를 해주면 에러표시가 사라질 것이다. 만약 이경우가 아니라면, 상단탭 Build에서 Clean Project 후 Rebuild Project를 해보던가, File탭 Project Structure에서 JDK, SDK경로가 잘되있는지 확인해보도록 하자. ..
액티비티와 프래그먼트끼리 데이터를 전달해주기 위해 Bundle을 찾아보던 도중 딱 맞는 예제가 있어 기록해논다.밑의 사이트에서 예제를 볼 수 있다.참고 : https://stackoverflow.com/questions/7149802/how-to-transfer-some-data-to-another-fragment 난 위의 예제를 참고해 다음과 같이 Bundle을 사용해 액티비티에서 프래그먼트에 데이터를 전달해줬다. * 액티비티쪽에서 전달할 데이터 저장//프래그먼트(영화리스트) movies = new MoviesFragment(); Bundle bundle = new Bundle(); bundle.putString("title", movieInfo.title); bundle.putFloat("reserv..
이번에 이미지가 있는 URL을 파싱해와서 이 URL을 어떻게 이미지로 받아서 사용할 수 있을까 하다가 Glidle 라이브러리를 써서 이미지가 있는 URL을 이미지로 변환하여 사용할 수 있었다. Glide말고도 스퀘어사에서 만든 Picasso 라이브러리도 찾았지만 좀 더 대중적으로 사용하는 Glide를 사용하게 되었다. 둘이 비교하면 용량이적고 빠른건 Glide이고 용량과 상대적으로 조금더 느리지만 화질이 좋은건 Picasso라고한다. 잘 비교해서 더 필요한걸 사용하면 좋을 것 같다. https://github.com/bumptech/glideGlide 레포지토리고 구글에서 개발했다고 한다. Glide 사용방법에 대해 간단하게 정리해보았다.먼저 Glide를 사용하기위해 Gradle module에 추가해준다..
반복문을 배우고 예제로 가장 많이 하는 것 중 일명 별찍기라고 특정 모양을 반복문을 사용해 만드는 것이 있다. 별찍기로 했던 것들 중 마름모 모양, 별 모양, 원 모양을 소개해볼려한다. 개수를 입력을 받고 개수에 해당하는 3가지 모양을 그려주게 코딩을 하였다. 빠르게 완성시키기 위해 급하게 만든거라 완벽한 모양이거나 코드가 깔끔하다고는 말을 못하겠다.. import java.util.Scanner; import static java.lang.Math.sqrt; public class ShapeMake { public static void main(String[] args) { int n; Scanner sc = new Scanner(System.in); while (true) { System.out.pr..
주석설명 달아논거 이해 안까먹게 복습용 메인 package com.example.a82107.myrecycleview; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.RecyclerView; import android.view.View; import android.widget.Toast; public class MainActivity extends AppCompatActivity { RecyclerView recyclerView; SingerAdapter adapt..
이번에 정보처리기사 필기를 보기위해 무슨 책을 사야할지 고민하였는데 일단 시나공께 유명하고 기능사볼때 시나공을 봤었는데 괜찮았어서 시나공으로 택했다. 그런데 시나공도 그냥 필기책하고 summary(요약) 필기책이 있는데 가격차도 만원이상 났었다. 그래서 가격도 저렴하고 요약해놔서 빠르게 보기좋은 시나공 summary(서머리) 필기책을 선택했다. 이 책에 대해 설명을 하자면 시나공 summary 시리즈는 공부할 시간이 부족한 학생, 최대한 빨리 공부해서 빨리 합격하고 싶은 수험생을 위해 핵심요약과 기출문제 위주로 구성한 초단기 합격 전략집이다. 시나공 summary 정보처리기사 필기 책의 장점은 다음과 같다. 1. 먼저 1권 핵심요약과 2권 기출문제로 이루어져있는데 1권 핵심요약이 기존의 시나공 책을 간략..
출처및 참고 : https://developer.android.com/guide/components/fragments?hl=ko 프래그먼트 관련 코딩을 하다가 프래그먼트는 액티비티와 다르게 onBackPressed()를 오버라이딩을 할 수 없어서 이 메소드에 뒤로가기 관련 이벤트를 처리할 수 없었다. 그래서 당시에 프래그먼트를 띄워줬을 때 뒤로가기를 누르면 현재 띄어진 프래그먼트를 참조하고 있는 Fragment 객체를 프래그먼트 관리자를 통해 remove를 해주고 null로 초기화해줬었다.밑에처럼 말이다. 참고로 moveinfo는 프래그먼트고 이미 액티비티에서 올라가있는 프래그먼트가 있는데 그 프래그먼트에서 버튼을 누르면 이 moveinfo가 담고있는 프래그먼트가 올라가는 상황이다.액티비티 내의 오버라이..
처음에 안드로이드 스튜디오를 사용할때 깃허브에다가 따로 백업을 안해두고 그냥 프로젝트를 복사 붙여넣기로 다른 폴더에 백업파일을 만드는 경우가 있다. 그런데 이런 경우 백업파일을 실행했을 때 이와 같이 install falied invald apks라는 에러가 난다. 이 경고문을 Ok눌러도 계속 에러가나고 무한반복적으로 에뮬레이터가 실행이 안된다. 그 에러를 해결하기 위한 방법은 다음과 같다. 프로젝트 상단툴바에 Build->Clean project를 하고 Rebuild project후에 실행을 하는것이다. 처음 안드로이드를 프로젝트를 복사해서 했다가 이러한 에러때문에 시간을 많이 날린적이 있다. 댓글과 공감은 큰 힘이됩니다!!
네트워킹 http 프로토콜에 접속하는 작업을 할 경우 Cleartext Http Traffic이라는 에러가 뜨는 경우가 있다. 이것은 안드로이드 API 28레벨부터 네트워크 보안정책때문에 생기는 오류이다. 위 그림은 버튼을 누르면 해당 url로 접속을 해서 파싱을 해오는 거였는데 이와 같은 오류가 뜸을 볼 수 있었다. 난 이러한 문제를 위 그림과 같이 해결하였는다. manifest에 aplication태그에 android:usesCleartextTraffic="true"를 추가하였다. 이것을 true로 해놈으로써 cleartext트래픽이 허용되게 된다.
https://chrome.google.com/webstore/detail/json-formatter/bcjindcccaagfpapjjmafapmmgkkhgoa/related?hl=ko 위 사이트에 들어가서 밑과 같은 크롬 확장프로그램을 다운받으면 크롬 브라우저로 json포맷을 볼때 자동으로 정렬하여 볼 수 있다.
json 포맷이 다음과 같이 일렬로 쭉 늘어져있는 경우 가독성이 떨어진다. 이런 포맷을 보기좋게 바꿔주는 사이트가 있다.JSON VIEWER라는 사이트이다.주소 : http://jsonviewer.stack.hu/#http://www.kobis.or.kr/kobisopenapi/webservice/rest/boxoffice/searchDailyBoxOfficeList.json?key=430156241533f1d058c603178cc3ca0e&targetDt=20120101 사용방법(심플하게!) 1. 먼저 위에 사이트에 접속한다음 TEXT에 JSON포맷의 문자를 복사 붙여넣기 해준다. 2. 그 다음 2번째 줄 탭에 있는 FORMAT을 클릭해준다. 그럼 다음과 같이 보기 좋게 바꿔준다. 복잡하고 보기힘들게 ..
출처 및 참고:https://www.edwith.org/boostcourse-android/lecture/17091/ Volley 라이브러리는 안드로이드 애플리케이션을 위한 네트워킹을 보다 쉽고 빠르게 만들어주는 HTTP 라이브러리입니다. build.gradle(Module)에 implementation 'com.android.volley:volley:1.1.0' 추가해야합니다. 또한 manifests에 도 추가해줘야 기능을 사용할 수 있습니다. Volley는 웹 요청과 응답을 단순화 시키기 위해 만들어진 라이브러리들 중 하나로서 그중에서도 가장 많이 사용되는 라이브러리 중 하나입니다. 장점은 앞서 말한것처럼 사용자가 직접 스레드 핸들러를 사용해서 네트워킹을 구현하지 않아도 되므로 훨씬 편하고 코드 양도..
자바에서 문자열의 대소문자에 상관없이 같은 알파벳이면 같다고 해주고싶을 때가 있을 수도 있다. 그럴 때 쓰는게 equalsIgnoreCase 이다. String에서 사용이 가능하다. 대소문자 구분없이 같은지 다른지 판단하는지 예제로 살펴보자. public class dd { public static void main(String[] args) { String tmpStr = "Y"; String tmpStr2 ="ThiSisSamPle"; System.out.println("------equals 사용------"); if (tmpStr.equals("y")) { System.out.println("같은 문자입니다!!"); } else { System.out.println("다른 문자입니다!!"); } ..
http://www.draw.iohttps://creately.com/diagram-type/class-diagramhttps://www.genmymodel.com/class-diagram-online
스레드는 동시작업을 할려면 필요한 하나의 작업단위라고 볼 수 있다. 예를들어, 코드에 따로 스레드를 생성 및 실행을 안하고 실행시킨 경우 메인스레드라고 하는 것만 작업을 하고 있는거다. (즉 스레드를 배우지 않았을 때의 안드로이드 프로그래밍은 메인스레드 하나만 돌아가고 있던거라고 보면된다.) 하지만 동시에 여러작업을 하기 위해서는 스레드를 생성하고 실행시켜야하고 이를 구현할 줄 알아야한다. 이러한 사용법을 예시코드로 남겨본다. 그러나 구현하는데있어서 주의해야할 점이 있다. xml즉 UI부분에 접근하는 것은 스레드 2개가 동시에 접근을 할 수 없다. 그래서 기본적으로는(초기) 메인스레드만 UI에 접근 할 수 있고 메인 외 다른 스레드들은 별도의 제어를 통해 UI부분을 다뤄야한다. 이러한 제어중에 핸들러라는..
인텐트는 애플리케이션 구성 요소 간에 작업 수행을 위한 정보를 전달하는 역할을 한다. Intent는 일종의 메시지 객체입니다. 이것을 사용해 다른 앱 구성 요소로부터 작업을 요청할 수 있습니다. 인텐트가 여러 구성 요소 사이의 통신을 용이하게 한다. 인텐트의 자세한 사항은 안드로이드 개발자문서를 참고하면된다. 인텐트 문서 : https://developer.android.com/guide/components/intents-filters?hl=ko 인텐트:액션+데이터 액티비티A =================> 액티비티B (3)onActivityResult()
[2021-04-17 업데이트] 안드로이드에서는 기본 메인(UI) 스레드가 아닌 다른 스레드(Woker Thread, 작업스레드)에서 UI객체에 직접 접근하는것은 불가합니다. 또한 안드로이드에서는 서버 혹은 데이터베이스와의 비동기 통신은 백그라운드 스레드(Woker Thread, 작업스레드)를 사용해야한다는 특징이 있습니다. 그럼 비동기로 DB에서 값을 가져온 후 UI업데이트를 하려면 어떻게 해야할까요? 서버와의 통신에 백그라운드 스레드를 사용하고 비동기적인 결과를 메인스레드를 사용해 UI 업데이트하고 아주 복잡하겠죠...? 백그라운드 작업결과와 관련된 UI업데이트 작업이 여러개면 더더욱 복잡해지고요.. ㅠ 이를 위해 핸들러를 사용하기도 하지만 핸드러를 사용하면 코드가 복잡해지고 초보자가 사용하기 어렵다..
[2021-04-03 업데이트] 네비게이션드로어(NavigationDrawer)에서 메뉴 레이아웃에 구분선을 넣는 방법입니다. 밑에 코드처럼 구조에서 으로 그루핑을 해주면 됩니다. 또한 android:checkable 속성을 사용하여 개별 메뉴 항목에 관한 선택 가능한 동작을 정의하거나 요소에서 android:checkableBehavior 속성을 사용하여 전체 그룹에 관한 선택 가능한 동작을 정의할 수 있습니다. 예를 들어 이 메뉴 그룹의 모든 항목은 라디오 버튼으로 선택할 수 있습니다. 이렇게하면 설정윗부분에 구분선이 들어갑니다. group에 대해 더 자세히 알고싶으면 다음 사이트를 참고해주세요!!! https://developer.android.com/guide/topics/ui/menus?hl=k..
안녕하세요 삼성 노트북 pen s를 사용한지 3주 정도 되어가는데 이 노트북에 대한 정보와 후기를 공유하고자합니다. 먼저 제품 스펙부터 봐보겠습니다. 참고: https://www.samsung.com/sec/pc/notebook-nt950sbe-x716/NT950SBE-X716/ 노트북 Pen S (38.1 cm) NT950SBE-X716 Core™ i7 / 512 GB SSD 운영체계Windows 10 Home 프로세서 / 칩셋Intel® Core™ i7 Processor 8565U (1.80 GHz up to 4.60 GHz 8 MB L3 Cache) 메모리16 GB LPDDR3 Memory (On BD 16 GB) HDD / SSDNone 512 GB NVMe SSD ODD없음 디스플레이38.1 c..