본문 바로가기

안드로이드12

[안드로이드] 지하철 역 클릭 시 이벤트 구현하기 2편 오랜만에 포스팅입니다. 지하철 역 클릭 시 이벤트 구현하기 1편은 여기에서 보실 수 있습니다. https://hyongdoc.tistory.com/170 [안드로이드] 지하철 역 클릭 시 이벤트 구현하기 1편 대중교통을 이용하는 사람이라면 누구나 사용하는 지하철 앱. 지하철 앱을 사용하다보면, 지하철 노선도에서 각 역을 클릭하여 출발지 지정을 하는 것을 볼 수 있는데, 이번 포스팅에서는 바로 그 기능을 다루는.. hyongdoc.tistory.com 지하철역이 정말 많습니다. 이 기능을 이용해 앱을 제작할 때 일일이 노가다로 100개가 넘는 지하철 역을 모두 입력했는데요. 정~말 개고생에 개노가다라는 점 미리 말씀드립니다.. 아무튼, sql파일로 데이터들이 다 저장되었다고 했을 때 이를 안드로이드에서 읽.. 2019. 12. 2.
[안드로이드] Fragment 로 데이터 전달하기 이번 포스팅에서는 Fragment로 데이터를 전달하는 방법에 대해 알아보겠습니다. 보통 일반적인 클래스의 경우, Constructor을 통해서 사용자가 지정하는 데이터를 전달할 수 있습니다. 그러나 프래그먼트의 경우, 디폴트 생성자를 사용자 임의대로 변경할 수가 없기 때문에, Bundle을 이용하여 데이터를 전달합니다. 필자의 경우, viewPager을 통해 프래그먼트를 생성하고, 해당 프래그먼트로 string값 한 개를 전달하는 코드를 작성했습니다. ViewPagerActivity 12FragmentReceiver fReceiver = FragmentReceiver.shareMyString(mystring);adapter.addFragment(fReceiver);Colored by Color Scrip.. 2019. 5. 23.
[안드로이드] View 터치 시 터치 이벤트 구현하기 앱 레이아웃을 꾸미다보면, 각종 뷰에 터치 이벤트를 구현해야할 때가 있습니다. 대표적으로 버튼 역할을 하는 뷰일 경우, 사용자가 터치했을 때 모션이 있으면, 사용자가 클릭했다라는 점을 인지시킬 수 있습니다. 자바 코드로 짤 필요도 없이, 아래 3줄만 각 뷰의 xml파일에 넣어주시면 됩니다. (Button, LinearLayout, TextView 등 대부분의 뷰에 적용가능합니다.) 123android:clickable="true"android:focusable="true"android:foreground ="?android:attr/selectableItemBackground"cs 2019. 5. 22.
[안드로이드] ArrayList<Object> 인텐트 넘기는 방법 액티비티 간 데이터를 주고 받을 때 Intent를 많이 사용하는데, 방식은 아래와 같습니다. SenderActivity.java 123Intent intent = new Intent(this, ReceiverActivity.class);intent.putExtra("string", string);startActivity(intent);Colored by Color Scriptercs ReceiverActivity.java 12Intent intent = getIntent();String receivedString = intent.getExtras.getString("string")cs 보내는 액티비티에서는 변수 타입 구분 없이 putExtra로 key, value값으로 보낼 수 있으나, 받는 액티비티에서.. 2019. 5. 22.
[안드로이드] ScrollView 안에 RecyclerView 을 넣을 수 있나요? 보통 레이아웃을 구성할 때 ScrollView 안에 RecyclerView를 넣고 싶을 때가 있습니다. 어떤 상황에서일까요? 흔한 예로, 게시글을 생각해보시면 됩니다. 하나의 게시글 밑으로 많은 댓글이 달리겠죠? 아래 2가지 경우에 대해 생각해보겠습니다. RecyclerView 만 사용했을 때 ScrollView 안에 모든 뷰(RecylcerView 포함)를 넣었을 때 먼저 첫번째 경우는, 댓글 부분만 스크롤이 됩니다. 즉, 게시글은 뷰의 특정 비율만큼 차지하고 있고, 스크롤을 내리면 댓글 부분만 위아래로 왔다갔다하는 셈입니다. 두번째의 경우, 게시글과 댓글이 한몸처럼 움직이기 때문에, 스크롤을 내리면 게시글은 안보이고 댓글로만 가득찬 화면이 나타나겠죠. 두번째 방식으로 사용하는 경우가 굉장히 많은데요... 2019. 5. 22.
[안드로이드] EndlessRecyclerViewScrollListener 사용 시 주의할 점 (resetState) 지난 번에 EndlessRecyclerViewScrollListener의 기본적인 사용 방법에 대해 포스팅 한데 이어, 이번에는 사용 시 주의할 점을 한가지 공유하고자 합니다. 보통 앱에서 이 리스너를 사용하는 이유는, 서버나 DB에서 더 불러올 데이터가 있기 때문입니다. 그런데 가끔씩은, 불러오는 데이터 자체를 모두 refresh하는 경우가 있는데요. 다음과 같은 상황을 생각해보면 됩니다. 앱에서 맛집을 검색함. 스크롤을 내리면서 계속 뜨는 맛집들을 보는데, 너무 필터링이 안되어 있다는 것을 깨달음. 지역으로 필터를 걸었음. 그랬더니, 전체 데이터가 뷰에서 없어지고, 필터링 된 데이터가 새로불러와짐. 이런 경우라면, 앱에서 스크롤 state은 어떻게 처리할까요? 별도로 state을 처리해주지 않는 이상.. 2019. 5. 21.