Bundle로 Activity에서 Fragment로 데이터 전달하는 걸 하고 있는데, 계속 null 값만 받아와서 고생을 했다 방법 Activity 코드 supportFragmentManager .beginTransaction() .replace(binding.frameFragment.id, DayScheduleFragment().apply{ arguments = Bundle().apply{ // Activity에서 날짜 누르면 그 날짜를 fragment로 전달하기 putString("Date", "${day.date}") } }) .commitAllowingStateLoss() supportFragmentManger에서 작업하면 된다. putString("key", "실제 전달할 값")을 적으면 된다...
방법 viewBinding.색바꿀TextViewId.setTextColor(Color.parseColor("색 16진수")) 예시 viewBinding.dayScheduleTitleTextView.setTextColor(Color.parseColor("#B708F4")) 이렇게 하면 dayScheduleTitleTextView라는 아이디를 가진 TextView의 Text 색상을 #B708F4로 바꿀 수 있다.
사각형을 custom 했는데 XML이 아니라, Activity에서 색을 바꾸고 싶었다. 방법 viewBinding.바꾸고 싶은 애 ID.setColorFilter(Color.parseColor("색 16진수로")) // 막대 색 바꾸기 예시 viewBinding.dayScheduleRectangle.setColorFilter(Color.parseColor("#FFFFFF")) 여기서 dayScheduleRectangle은 ImageView 아이디이고, src에서 볼 수 있듯이 이미지를 custom하여 그 배경색을 바꿀 수 있다.
https://github.com/hdodenhof/CircleImageView GitHub - hdodenhof/CircleImageView: A circular ImageView for Android A circular ImageView for Android. Contribute to hdodenhof/CircleImageView development by creating an account on GitHub. github.com 이 분의 라이브러리 사용할 예정 WHY? 프로필 사진을 표현할때 자주 사용함. (이미지를 동그랗게 잘라서 표현) 원형 테두리를 둘러주는 기능도 보유 HOW? => 위에 있는 깃허브에 들어가서 내려보면 Gradle이란 게 있다. 저 코드를 복사해서 Module에 있는 grad..
https://github.com/Baseflow/PhotoView GitHub - Baseflow/PhotoView: Implementation of ImageView for Android that supports zooming, by various touch gestures. Implementation of ImageView for Android that supports zooming, by various touch gestures. - GitHub - Baseflow/PhotoView: Implementation of ImageView for Android that supports zooming, by various to... github.com 이 분의 라이브러리로 이미지를 확대/축소 할 수 있다..
완성본 액션바 외 다른 코드는 밑 링크 참고 https://dkan9634.tistory.com/97 사용법 1. 타이틀바로 사용할 xml을 그려주자. => height : 60dp 2. 액티비티에서 -> 기본 액션바를 불러내서 => 커스텀 액션바로 설정하자. // 1. 액티비티에서 -> 기본 액션바를 불러내서 => custom 액션바로 수정 //기본액션바를 불러내자 val defaultActionBar = supportActionBar!! // 모드를 커스텀 지원으로 설정 defaultActionBar.displayOptions = ActionBar.DISPLAY_SHOW_CUSTOM // 실제로 어떤 커스텀뷰를 사용? defaultActionBar.setCustomView(R.layout.my_cus..
Why XML로 지정? 단순 모양의 테두리 사각형, RoundRect(모서리가 둥근 사각형) 등의 모양은, 그림파일을 배치하기 보다는 XML로 직접 코딩해서 배치하면 앱에 긍정적인 영향 => 간단한 모양은 XML로 직접 그려서 활용하자 그림 파일을 쓰는 것보다 용량, 속도 면에서 더 빠름 상황별로 다른 모양 / 색깔을 보여주는게 가능. => ex. 손으로 누르고 있을 때 / 손을 뗐을 때 보여지는 모양을 다르게 처리. 완성본 생성법 res > drawable 우클릭 > xml 파일 생성 사용법 1. selector : 어떤 상황에서 보여질지 상황을 구별하기 위한 태그. => 내용물로 태그를 배치해서, 상황을 종류별로 나눈다. => item 태그의 속성으로 pressed, checked, focused 등..
https://dkan9634.tistory.com/94 [Android] TabLayout - Viewpager 연계 라이브러리 https://dkan9634.tistory.com/93 [Android] ViewPager Viewpager란? : 여러개의 화면(Fragment)을 책 페이지처럼 한 장씩 보도록 지원하는 기능. => (가로) 스크롤뷰 + 스크롤 위치를 강제시키는 기능이 추가된 개념. => dkan9634.tistory.com 이어서 작성 사용법 activity_main.xml의 Tablayout 부분에서 text color는 app:tabSelectedTextColor="@color/black" indicator color는 (indicator는 Tab Layout 밑에 있는 bar를 나..
사용법 1. fragments 패키지에 별도로 관리(없다면 생성) Kotlin class로 fragment 생성 => 이름은 ~~Fragment로 짓자 => Fragment()를 상속받도록 처리 - androidx에서 제공하는 것으로 자동 완성 Fragment 모양(layout)을 xml로 그려주자 이름은 fragment_~~로 짓는 게 일반적 2. xml + 코틀린파일 연결 : 코틀린 클래스에서 onCreateView 함수를 오버라이딩. onCreateView : 어떤 xml을 사용할지 연결하는데만 쓰이는 전용 함수. return 내용을 통으로 교체. (return 문장 전체 삭제) return inflater.inflate(R.layout.xml파일이름, container, false) package..
https://dkan9634.tistory.com/93 [Android] ViewPager Viewpager란? : 여러개의 화면(Fragment)을 책 페이지처럼 한 장씩 보도록 지원하는 기능. => (가로) 스크롤뷰 + 스크롤 위치를 강제시키는 기능이 추가된 개념. => 인스타그램 피드 느낌 사용법 1. 액티 dkan9634.tistory.com 위 코드 이어서 작업 TabLayout이란? 플레이스토어처럼, 지금 사용자가 어느 Fragment를 보고있는지 알려주고 싶을 때 사용 원하는 탭을 누르면 해당 페이지로 이동 기능. 안드로이드의 기본 기능 아님. => 라이브러리 설치 작업 필요.(웬만하면 깔려 있음) 사용법 1. xml에서 탭레이아웃 배치 + 아이디 부여 => 배치 => 라이브러리 설치가 안..