Android

    Android Studio - 이미지 처리를 위한 Glide 라이브러리 사용법

    1. Glide 라이브러리 구글에서 인수한 안드로이드 이미지 로딩 라이브러리 이미지의 크기 조정, 로딩 이미지, 오류 이미지 표시 등을 쉽게 구현도록 지원한다. 동영상, gif 파일 로딩까지 지원한다. 빠른 로딩을 위해 내부적으로 cache를 갖는다. httpUrlConnection 라이브러리를 기반으로 하지만, Volley, OkHttp 등의 라이브러리를 사용할 수 있는 플러그인도 지원한다.(때문에 url을 통해 웹서버에 접근하여 file등을 다운로드 받을 수 있고, 이를 로딩할 수 있다.) 서버에서 이미지를 내려받을 때 Volley나 Retrofit보다 더 빠르게 처리한다. 자동으로 페이징 처리를 해서 스크롤이 가지 않은 곳의 이미지는 불러오지 않는다. 공식 GitHub 2. 사용 방법 build.g..

    Android Studio - Floating Action Button 사용 방법

    1. 플로팅 액션 버튼(FAB) 항상 고정된 위치에 있는 둥둥 떠 있는 듯한 버튼 기본적으로 ImageView를 상속받는 위젯이기 때문에 버튼에 표현할 아이콘을 지정 가능 일반 버튼 처럼 클릭 이벤트에 대한 처리 가능 버튼을 클릭하였을 때 서브 버튼이 나열 되도록 구현 가능 2. UI 설계 3. 사용법 코드 작성은 일반적인 버튼과 같다. fab = findViewById(R.id.fab); // fab 버튼에 대한 이벤트 처리 fab.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { // AddActivity 를 실행하는 메소드 startAddActivity(); } });

    Android Studio - ActionBar에 메뉴 추가해서 이벤트 처리하기

    1. 액션바에 추가할 메뉴의 xml 파일 만들기 res 우클릭 - New - Android Resource File Resource type을 Menu로 바꿔준다. xml에 Menu item을 추가하고 요구사항에 맞게 Attribute 설정해준다. 2. 액션바에 메뉴 추가 및 이벤트 처리 코드 // 액션바의 메뉴는, 전용 함수가 있다. // 이 함수를 오버라이딩 해야 한다. @Override public boolean onCreateOptionsMenu(Menu menu) { // 액션바에 메뉴가 나오도록 설정한다. getMenuInflater().inflate(R.menu.main, menu); return true; } // 액션바의 메뉴를 탭했을 때, 실행하는 함수가 있다. // 이 함수를 오버라이..

    Android Studio - ActionBar의 타이틀, Back 버튼 설정

    1. 액션바 설정 액션바 설정하는 코드의 위치는 일반적으로 onCreate 메소드의 setContentView 바로 밑에 적어준다. 아래의 백 버튼 생성하는 코드는 화면에 나타내기만 하고 이벤트 처리는 따로 해줘야 한다. // 액션바의 타이틀 변경 getSupportActionBar().setTitle("포스팅 생성"); // 액션바에 백 버튼 생성 getSupportActionBar().setDisplayHomeAsUpEnabled(true); 2. 액션바의 Back 버튼 이벤트 처리 이 함수의 위치는 액티비티 클래스 바로 아래, 즉 onCreate과 같은 레벨에 작성한다. // 액션바의 돌아가는 화살표를 눌렀을때의 이벤트를 처리하는 // 함수를 오버라이딩 해야 한다. @Override public b..

    Android Studio - RecyclerView의 화면을 갱신하는 방법

    RecyclerView 화면 갱신은 RecyclerView.Adapter 클래스를 이용하여 구현할 수 있습니다. RecyclerView.Adapter는 데이터 제공자(data source)에서 가져온 데이터를 이용하여 각 아이템 뷰를 생성하고 관리하는 기능을 제공합니다. 데이터가 변경되었을 때 RecyclerView 화면을 갱신하려면, RecyclerView.Adapter에서 다음 메소드를 호출하여야 합니다. notifyDataSetChanged() - 데이터 전체가 변경되었을 때 호출합니다. notifyItemInserted(position) - 특정 위치에 새로운 아이템이 추가되었을 때 호출합니다. notifyItemRemoved(position) - 특정 위치의 아이템이 제거되었을 때 호출합니다. ..

    Android Studio - 네트워크로 받은 JSON Array를 RecyclerView로 표시하기

    0. 구현할 기능 네트워크로부터 JSON의 Array를 받아와서, 리사이클러 뷰를 사용해 하나씩 보여준다. 테스트 데이터는 https://jsonplaceholder.typicode.com/posts 로부터 받아온다. 네트워크 통신은 Volley 라이브러리를 사용한다. 1. 권한 설정 build.gradle에 Volley 라이브러리를 추가해 준다. 아래 포스팅을 참고해 통신 권한을 준다 https://donghyeok90.tistory.com/265 Android Studio - 안드로이드 네트워크 통신 권한 설정하기(+에뮬레이터 설정) 1. 안드로이드에 인터넷 권한(Permission) 추가 AndroidManifest.xml에 다음과 같이 추가해준다. 2. 에뮬레이터에서 인터넷 사용 설정 위의 1번만..

    Android Studio - 네트워크 통신을 위한 Volley 라이브러리

    1. Volley 라이브러리 앱에서 서버와 http 통신을 할 때 HttpURLConnection을 사용하면 직접 요청과 응답을 받는 것이 가능하다. 하지만 직접 쓰레드를 구현해야 하며, 기본적인 코드 양 또한 많아 코드가 복잡해진다는 단점이 있다. 그래서 안드로이드에서는 Volley 라이브러리를 제공하고 있다. Volley 는 안드로이드 애플리케이션에서 HTTP 네트워크 요청을 쉽게 처리할 수 있도록 도와주는 라이브러리다. Volley는 빠르고 쉬운 네트워크 통신, 캐시 및 부하 분산 등의 기능을 제공한다. 또한 다양한 HTTP 요청 유형 (GET, POST, PUT 등)을 지원하며, 요청 결과를 사용하기 쉬운 형식으로 파싱할 수 있다. 공식 깃허브 Volley 라이브러리는 다음과 같이 동작한다. 사용..

    Android Studio - 안드로이드 네트워크 통신 권한 설정하기(+에뮬레이터 설정)

    1. 안드로이드에 인터넷 권한(Permission) 추가 AndroidManifest.xml에 다음과 같이 추가해준다. 2. 에뮬레이터에서 인터넷 사용 설정 위의 1번만 수행하면 안드로이드에서 네트워크 통신이 가능하지만, 안드로이드 스튜디오의 에뮬레이터에서는 네트워크 통신을 하려면 추가적인 설정을 해줘야 한다. 1) res - xml 우클릭 - New - XML Resource File 2) network_security_config 라는 이름으로 생성 3) network_security_config.xml 파일에 코드 작성 허용할 도메인 4) AndroidManifest.xml 파일에 코드 추가 부분 android:targetSandboxVersion="1" 부분 android:usesCleartext..