전체 글
-
[Android] 데이터 저장 - SharedPreferences안드로이드 2024. 4. 30. 14:56
✏️ TIL(Today I Learned)SharedPreferences 대해 알아보았다.이는 애플리케이션의 사용자 설정이나 간단한 데이터를 저장하기 위해 사용된다.EditText에 입력한 뒤, 저장 버튼을 누르면 입력한 text를 SharedPreferences로 저장했다.그리고, 앱을 다시 열면 저장된 text를 불러오도록 만들었다.class MainActivity : AppCompatActivity() { private val binding by lazy { ActivityMainBinding.inflate(layoutInflater) } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInst..
-
[Android] 주소록 App 만들기 - 마무리 & KPT 회고안드로이드 2024. 4. 30. 12:44
📝 프로젝트 소개- 구현한 기능ContactTabLayout, ViewPager2, FloatingActionButton을 활용하여 사용자 인터페이스를 구성탭 전환(TabSwitch) 클릭 이벤트를 통해 사용자의 상호작용을 처리Contact ListRecyclerView와 Adapter를 이용해 연락처 리스트를 동적으로 표시사용자가 좋아하는 연락처에 대해 즐겨찾기 기능을 제공Contact Mypage & Contact DetailClipboardManager, PopupMenu, Intent를 사용하여 다양한 기능을 제공 (전화, 문자, 링크 접속 및 정보 복사)Contact Dialog & Schedule DialogDialogFragment를 사용하여 사용자 입력을 받는 다이얼로그를 구현입력된 정보..
-
[Android] Check your module classpath for missing or conflicting dependencies (Gradle 인식 안되는 오류) 해결안드로이드 2024. 4. 29. 20:37
클론한 프로젝트를 열었는데, 아래와 같은 오류 로그가 발생했다.Cannot access class 'org.gradle.accessors.dm.LibrariesForLibs'.Check your module classpath for missing or conflicting dependencies 이럴 때에는 File > Invalidate Caches > restart 하면 해결이 된다.혹은 Clean Project -> Rebuild Project 하면 된다
-
[Android] Custom DialogFragment를 Fragment에서 띄우기안드로이드 2024. 4. 29. 17:14
✏️ TIL(Today I Learned)저번에 만든 커스텀 다이얼로그 프래그먼트를 프래그먼트에서 띄워보았다.원하는 프래그먼트의 onViewCreated() 안에서 다이얼로그를 만들고 show()하면 된다.override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) with(binding) { ivAddContact.setOnClickListener { val dialog = AddContactDialogFragment( buttonClickListener = object: ButtonCli..
-
[Android] [당근마켓 클론 코딩] 메인페이지 구현3 - 커스텀 Floating Button (RecyclerView/ AlphaAnimation)안드로이드 2024. 4. 19. 11:39
✏️ TIL(Today I Learned) 커스텀한 플로팅 버튼을 누르면 스크롤이 최상단으로 이동되도록 했다. fade 효과를 넣어, 버튼이 나타나고 사라지는 것을 자연스럽게 만들었다. // activity_main.xml Floating Button은 원하는대로 커스텀하려면 style을 적용하면된다. RoundedShapeAppearanceOverlay를 사용해 원형으로 모양을 바꿨고, backgroundTint로 버튼의 색상을, tint로 버튼안의 이미지의 색상을 적용해줬다. 클릭시 색 변화가 생기도록 했는데, selector_btn_floating.xml을 사용했다. 이를 app:rippleColor 속성에 넣어줬는데, rippleColor는 버튼이 클릭되거나 터치될 때, 버튼 주변에 나타나는 애니..
-
[Android] [당근마켓 클론 코딩] 메인페이지에서 아이템 상세페이지로 data class 객체를 intent로 전달 (Parcelize)안드로이드 2024. 4. 18. 20:29
✏️ TIL(Today I Learned) 메인페이지에서 아이템을 클릭하면, 상세페이지로 이동과 동시에 아이템의 데이터를 전달하여 화면을 구성하도록 했다. data class 객체를 intent로 전달하기 위해 Parcelize를 사용했다. Parcelize는 Kotlin의 안드로이드 확장 라이브러리 중 하나로, 안드로이드에서 객체를 직렬화(Serialization)하고 전송하기 위해 사용된다. 이를 사용하기 위해서는, build.gradle(:app) 파일의 plugins에 id("kotlin-parcelize")를 추가해야한다. plugins { alias(libs.plugins.androidApplication) alias(libs.plugins.jetbrainsKotlinAndroid) id ("..