본문 바로가기
반응형

2023년 이전/Android39

java.lang.IllegalArgumentException: Parameter specified as non-null is null: method kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull, parameter view android 작업을 하다보니 위와 같은 error가 나타났서 그 원인을 찾아보았다. 작업 조건은 Listview에 사용되는 adapter를 BaseAdapter로 했을 때, class TestAdapter(val context: Context) : BaseAdapter() 위와 같은 원인이 발생했습니다. 원인은 override fun getView(position: Int, view: View, parent: ViewGroup?): View { 위의 code에서 view가 원래는 view:View?로 되있었는데 view:View로 변경해서 발생한 원입니다. 생각을 해보니, Java 변수는 언제나 null을 허용하고, Kotlin 변수는 null을 허용치 않는데, 저 getview의 원본을 보면은 pub.. 2021. 12. 5.
android compileSdkVersion 31 targetSdkVersion 31 and 카카오/네이버 로그인 Manifest error 개발 하다 아래 error를 보게 되었고 그에 대한 정리를 위해 글을 쓴다. Manifest merger failed : android:exported needs to be explicitly specified for . Apps targeting Android 12 and higher are required to specify an explicit value for `android:exported` when the corresponding component has an intent filter defined. See for details. android 개발하면서 android 에서 제공하는 navigation을 적용하면서 "androidx.navigation:navigation-compose:2.4... 2021. 12. 5.
Navigation을 사용항 경우 fragmentReulst Navgiation을 사용할 경우에는 fragmentReult 가 동작하지 않는다. 그럴 경우에는 다음 방법으로 처리하면 된다. 상황은 이렇다. FragmentA에서 어떤 리스트를 보여주고 있다. 그리고 그 리스트에서 한 아이템을 클릭하면 그 아이템에 대한 상세 설명을 보여주는 FragmentB를 보여준다. FragmentB에서 그 아이템을 삭제한다는 액션을 선택하고 FragmentB가 닫히고 FragmentA가 나타난다. FragmentA로 돌아왔을 때 삭제한 항목없이 리스트가 보여진다. 데이터는 Viewmodel을 사용하면된고, reuslt하는 방법은 다음과 같다. FragmentA findNavController().currentBackStackEntry?.savedStateHandle?.getLi.. 2021. 12. 5.
FragmentResult 상황은 이렇다. FragmentA에서 어떤 리스트를 보여주고 있다. 그리고 그 리스트에서 한 아이템을 클릭하면 그 아이템에 대한 상세 설명을 보여주는 FragmentB를 보여준다. FragmentB에서 그 아이템을 삭제한다는 액션을 선택하고 FragmentB가 닫히고 FragmentA가 나타난다. FragmentA로 돌아왔을 때 삭제한 항목없이 리스트가 보여진다. 위와 같은 상황을 처리할때 데이터는 ViewModel을 사용하여 처리하면된다. 하지만 UI이 그리는데 어려움이 있었다. 지우고 돌아 왔을 때 FragmentA가 따로 반응하지 않기 때문이다. (만일 onResume을 강제로 불러주었으면 반응 했을지도 모른다... ) 아무튼 이럴때 사용하는 방법이 FragmentResult API이다. 이 API.. 2021. 12. 5.
반응형