Android (38) 썸네일형 리스트형 ConstraintLayout 이해, 정복하기 목표 ConstraintLayout, Constraint, Chain, Constraint 삭제 방법, Baseline constraint 등에 대해서 알아봅시다! ConstraintLayout 무엇? 유연한 방식으로 자식뷰의 위치, 크기를 조정할 수 있는 뷰 그룹이다. ConstraintLayout에 있는 각각의 뷰들의 위치는 적어도 하나의 수평과 수직 제약을 사용해 정해진다. 하나의 제약은 한 뷰를 다른 UI 요소, 부모 레이아웃, 보이지 않는 기준선에 연결하거나 나란히 한다. ConstraintLayout을 사용함으로써 얻는 이점 스크린 사이즈나 해상도가 다양한 기기에 반응해 레이아웃을 만들 수 있다. LinearLayout보다 평평한 뷰 위계를(a flatter view hierarchy) 결과로.. Android Notification Example (+Channel) 안드로이드의 경우 8버전(오레오, API 26) 이후에는 알림 기능을 위해서는 알림에 대한 Channel을 설정해야 한다. 알림의 구현 과정 1. 알림 Channel을 만든다. (앱 설정에 UI에서는 Category라고 나온다.) 2. 알림을 설정하고 사용자에게 알림을 보낸다. 알림 구현 코드 1. 알림 Channel을 만든다. NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); // 오레오 버전 이상인 경우에 알림 채널을 만든다. if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { // 채널 아이디, 이름, 중요.. 모서리가 둥근 ImageView, Button, TextView 만들기 뷰의 모서리를 둥그렇게 만드는 방법 2가지는 1. 둥그런 효과를 주는 xml을 만들어 뷰의 background 속성에 넣는다. 2. CardView를 사용한다. 버튼이랑, 텍스트 뷰의 경우 1번으로도 충분히 위 이미지 같이 모서리가 둥그래진다. 하지만 이미지 뷰의 경우 메인 이미지 때문에 백그라운드 속성이 적용이 안돼 모서리가 직각으로 나온다. 그래서 이미지뷰의 경우 카드뷰를 사용해 둥그런 효과를 준다. 1. 둥그런 효과를 주는 xml을 만들어 뷰의 background 속성에 넣는다. (버튼, 텍스트뷰) - activity_main.xml - round.xml Radius 속성을 통해 원하는 모서리만 둥그렇게 만들 수 있다. 2. CardView를 사용한다. implementation 'com.andro.. [RecyclerView]Header와 Footer를 가진 리사이클러뷰 리사이클러뷰에 헤더와 푸터를 달아서 보여주는 리스트가 무엇을 의미하는지 알 수 있습니다. 리사이클러뷰에서는 헤더와 푸터를 적용하는 방법은 RecyclerView.Adapter의 getItemViewType 함수를 사용하면 됩니다. 리사이클러뷰는 헤더와 푸터를 각각 하나의 아이템으로 생각하기 때문에 getItemViewType 함수를 통해 보여줄 뷰가 아이템인지, 헤더, 푸터 인지에 따라 다르게 작업을 하면 됩니다. 즉 뷰홀더 레이아웃은 총 3개(아이템, 헤더, 푸터)가 필요합니다. 필요한 코드는 다음과 같습니다. - MainActivity.java public class MainActivity extends AppCompatActivity { RecyclerView recyclerView; ArrayLi.. [안드로이드/Android] 플레이스토어 앱 강제로 업데이트하기 출시한 앱의 경우 업데이트가 됐을 때 사용자에게 업데이트를 하라고 알려줘야 한다. 안드로이드에서는 AppUpdateManager 객체를 제공한다. 업데이트 요청 방식은 '즉시' , '유연' 으로 총 두 가지 방식이 있다. '유연' 요청은 앱 백그라운드에서 업데이트를 받는 방식이다. 한 마디로 앱을 업데이트하면서 앱을 사용할 수 있게 하는 방식이다. '즉시' 요청은 사용자가 앱을 업데이트하고 다시 시작해야 하는 전체 화면 사용자 환경입니다. 즉 앱 업데이트를 해야 앱을 사용할 수 있는 것이다. 이 포스팅에서는 '즉시' 업데이트에 대해서 알아볼 것이다. 필요사항 1. 업데이트는 Android 5.0(API 수준 21) 이상을 실행하는 기기에서만 작동하며, 2. Play Core 라이브러리 1.5.0 이상 사.. [안드로이드/Android] 기기 네트워크 연결 상태 확인 앱 내에서 네트워크 연결을 확인해야 할 상황이 많이 있다. 예를 들어 실시간 방송 중 네트워크가 끊겼다면?, 채팅을 보낼 때 인터넷이 연결이 안 되는 상황이면? 등등 사용자가 네트워크에 연결이 됐는지 안 됐는지, 연결이 됐다면 와이파이인지 셀룰러 통신(3G, LTE, 5G)을 사용하고 있는지를 알기 위한 코드이다. * 셀룰러 통신 : 주파수 자원을 효율적으로 활용해 기지국을 공간적으로 확장하는 이동통신 - 네트워크 연결 상태를 토스트 메세지로 띄우도록 한 결과 화면입니다. - 메니페스트 파일 네트워크 상태 접근하기 위한 권한 추가 - 네트워크 연결 확인 java 코드 public void getConnectivityStatus(Context context) { // 네트워크 연결 상태 확인하기 위한 Co.. 이전 1 2 3 4 5 다음