목록Android (90)
막무가내 삽질 블로그
이 글을 통해 참고 하실려는 분들은 다른 블로그를 참고하세요..... 아직 공부중입니다 안드로이드 룸에 대해 정리 한다. 룸은 SQLite의 기능을 모두 사용할 수 있고, DB로의 접근을 쉽게 도와주는 라이브러리! 자세한 내용은 https://developer.android.com/training/data-storage/room?hl=ko 룸의 구성 요소 Entity : 데이터베이스 안에 있는 테이블을 자바나 코틀린 클래스로 나타냄. 데이터 모델 클래스이다. DAO : Database Access Object, 디비에 접근해 insert,delete 등을 수행하는 메소드를 가지고 있다. Database : 앱에 영구 저장되는 데이터와 연결을 위한 액세스 지점, 테이블과 버전을 정의하는 곳 Entity @..
틀린 부분 있다면 댓글로 남겨주세요 프래그먼트의 add, replace 와 backstack을 사용했을 때 생명주기를 정리해보았다. replace 기존 fragment를 detach까지 끝낸 다음 새로운 fragment를 올림 add 기존 fragment를 그대로 둔 채 새로운 fragment를 올림 테스트 예제 1. ( fragment add ) 액티비티 위에 1~3번의 프래그먼트가 있다는 가정 액티비티 위에 1번 > 2번 > 3번의 순서로 테스트 진행 add.commit을 했을 경우 hide를 안시키면 이미 생성한 프래그먼트라서 에러가 뜬다. 그래서 보이지 않는 프래그먼트는 hide 시켜줬다. Button button = findViewById(R.id.btn_one); button.setOnClic..
애니메이션 효과를 정리해 보았습니다. what is the animation? 동작이나 모양이 조금씩 다른 많은 그림이나 인형을 한 장면씩 촬영하여 영사하였을 때에 화상이 연속하여 움직이는 것처럼 보이게 하는 것 안드로이드에서 새로운 뷰가 나타나고 현재뷰가 사라질때 애니메이션 효과를 주어서 움직이는 것처럼(슬라이드) 보여지는 것을 말합니다. 제가 구현해 볼 예제는 1번 새로운 뷰가 나타날때는 우측에서 들어오고, 현재뷰가 사라질때는 왼쪽으로 나가고 이전화면으로 돌아갈때는 현재뷰가 오른쪽으로 나가고, 들어오는 뷰는 왼쪽에서 들어오도록 설정 2번 새로운 뷰가 나타날때는 아래에서 들어오고, 현재뷰가 사라질때는 위쪽으로 나가고 이전화면으로 돌아갈때는 현재뷰가 아래쪽으로 나가고, 들어오는 뷰는 위쪽에서 들어오도록 ..
안드로이드 다이얼로그에 이미지뷰 넣기 custom.xml custom.java private void customDialog() { Dialog dialog = new Dialog(this); dialog.setContentView(R.layout.signup3_customdialog); dialog.setTitle("custom dialog !!"); ImageView iv1 = dialog.findViewById(R.id.image1); ImageView iv2 = dialog.findViewById(R.id.image2); ImageView iv3 = dialog.findViewById(R.id.image3); ImageView iv4 = dialog.findViewById(R.id.image4);..
약 1년전 쯤 opencv를 활용하여 얼굴인식 및 이미지 필터를 적용하였다. 이번 프로젝트는 이미지를 활용하여 사람인지 아닌지를 판별하는 기능이 있다. (위랑 거의비슷) 차이 = 영상기반, 이미지기반 순서 1. 이미지를 선택 2. 이미지를 얼굴,눈을 읽을 수 있게 셋팅 후 네이티브로 넘김 3. 네이티브에서 받아온 jlong 타입 input의 이미지를 위치를 확인 하고 얼굴형태,눈을 확인 후 사람이면 1 아니면 0을 넘겨줌 4. 확인 테스트 프로젝트를 만들어서 정리해 본다. private static final String TAG = "ImTest"; public static final int GALLERY = 1; private Button gallery, success; private ImageView..
이미지 원본 비율 테스트중 image 1500/1996 device 1080/1794 imageview1 wrap,wrap 1080/1437 imageview2 100,100dp 263/263 imageview3 150,150dp 394/394 imageview4 200,200dp 525/525 imageview1 200dp,wrap 525/698 imageview2 wrap,wrap override200,200 150/200
A유저가 B유저의 프로필에서 친구추가를 누르면 B유저의 핸드폰에 알림이 울려야 한다. FCM 을 활용하여 테스트 해보았다. https://firebase.google.com/docs/android/setup?hl=ko 안드로이드 프로젝트에 파이어베이스를 추가 시킨다 마지막 단계 sync now를 누른 후 이 화면이 계속 되는 사람들은 에뮬레이터를 한번 실행시키면 넘어 갈 수 있다. 토큰은 사람으로 치면 주민등록번호라고 생각한다. 사람이 태어나면 주민번호를 등록하고 사망하면 주민번호가 삭제되는 것 처럼 앱이 실행되면 토큰이 발급되면서 해당 토큰으로 알림을 받을 수 있다. 테스트 파일의 흐름은 A핸드폰의 토큰을 발급받고 보관해 두었다가 B핸드폰을 실행하여 A핸드폰의 토큰으로 알림을 보낸다. MainActiv..
infinite/endless scroll 이란? 페이지 이동없이 스크롤을 내리면 다음 페이지의 내용을 불러오는 것을 의미한다. 즉, 무한스크롤이다. 예제를 통해 실습해본 후 내 프로젝트에 맞게 변경했다. 서버에서 받아온 데이터가 100개라고 가정했을 때 100개를 담는 리스트를 하나를 할당한 후 스크롤 이벤트가 발생할때 10개의 데이터를 불러온다. 테스트 예제 activity_main.xml item_recycler.xml item_loading.xml RecyclerViewAdapter public class RecyclerViewAdapter extends RecyclerView.Adapter { private final int VIEW_TYPE_ITEM = 0; private final int V..