NavHostFragment
트러블 슈팅이랄 것도 없지만, 강의에서 나온 코드로 하니까 안됐는데 다음과 같이 하면 됨
//MainActivity class 내부
lateinit var navController : NavController
// MainActivity.kt 안에 onCreate 함수 안
navController = nav_host_fragment.findNavController()
고친 후:
import androidx.navigation.fragment.NavHostFragment
// 중략
val navHostFragment =
supportFragmentManager.findFragmentById(R.id.nav_host_fragment) as NavHostFragment
val navController = navHostFragment.navController
아마 영상은 2020년이라서 버전이 좀 달라진 건지...
그냥 네이게이션 api 보면 되는듯
아래 [대상으로 이동] 파트에 나온 코드 쓰고, 'NavHostFragment' import해주면 된다.
https://developer.android.com/guide/navigation/navigation-getting-started
탐색 구성요소 시작하기 | Android 개발자 | Android Developers
이 주제는 탐색 구성요소를 설정하고 사용하는 방법을 설명합니다. 탐색 구성요소의 대략적인 개요는 탐색 개요를 참고하세요. 환경 설정 참고: 탐색 구성요소는 Android 스튜디오 3.3 이상이 필요
developer.android.com
[xX][mM][lL]"과 일치하는 처리 명령 대상은 허용되지 않습니다.
오류 내용:
Caused by: com.android.aaptcompiler.ResourceCompilationException: Resource compilation failed. Check logs for details.
at com.android.aaptcompiler.ResourceCompiler.compileResource(ResourceCompiler.kt:121)
at com.android.build.gradle.internal.res.ResourceCompilerRunnable$Companion.compileSingleResource(ResourceCompilerRunnable.kt:31)
at com.android.build.gradle.internal.res.ResourceCompilerRunnable.run(ResourceCompilerRunnable.kt:15)
at com.android.build.gradle.internal.profile.ProfileAwareWorkAction.execute(ProfileAwareWorkAction.kt:74)
at org.gradle.workers.internal.DefaultWorkerServer.execute(DefaultWorkerServer.java:63)
at org.gradle.workers.internal.NoIsolationWorkerFactory$1$1.create(NoIsolationWorkerFactory.java:67)
at org.gradle.workers.internal.NoIsolationWorkerFactory$1$1.create(NoIsolationWorkerFactory.java:63)
at org.gradle.internal.classloader.ClassLoaderUtils.executeInClassloader(ClassLoaderUtils.java:97)
at org.gradle.workers.internal.NoIsolationWorkerFactory$1.lambda$execute$0(NoIsolationWorkerFactory.java:63)
at org.gradle.workers.internal.AbstractWorker$1.call(AbstractWorker.java:44)
at org.gradle.workers.internal.AbstractWorker$1.call(AbstractWorker.java:41)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:200)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:195)
at org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:75)
at org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:68)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:153)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:68)
at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:62)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.lambda$call$2(DefaultBuildOperationExecutor.java:76)
at org.gradle.internal.operations.UnmanagedBuildOperationWrapper.callWithUnmanagedSupport(UnmanagedBuildOperationWrapper.java:54)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:76)
at org.gradle.workers.internal.AbstractWorker.executeWrappedInBuildOperation(AbstractWorker.java:41)
at org.gradle.workers.internal.NoIsolationWorkerFactory$1.execute(NoIsolationWorkerFactory.java:60)
at org.gradle.workers.internal.DefaultWorkerExecutor.lambda$submitWork$2(DefaultWorkerExecutor.java:200)
at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.runExecution(DefaultConditionalExecutionQueue.java:215)
at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.runBatch(DefaultConditionalExecutionQueue.java:164)
at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.run(DefaultConditionalExecutionQueue.java:131)
... 3 more
Caused by: javax.xml.stream.XMLStreamException: ParseError at [row,col]:[9,10]
Message: "[xX][mM][lL]"�� ��ġ�ϴ� ó�� ��� ����� ������ �ʽ��ϴ�.
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.next(XMLStreamReaderImpl.java:652)
at java.xml/com.sun.xml.internal.stream.XMLEventReaderImpl.nextEvent(XMLEventReaderImpl.java:83)
at com.android.aaptcompiler.XmlProcessor.processElement(XmlProcessor.kt:282)
at com.android.aaptcompiler.XmlProcessor.processElement$default(XmlProcessor.kt:204)
at com.android.aaptcompiler.XmlProcessor.process(XmlProcessor.kt:127)
at com.android.aaptcompiler.ResourceCompiler.compileXml(ResourceCompiler.kt:267)
at com.android.aaptcompiler.ResourceCompiler.access$compileXml(ResourceCompiler.kt:1)
at com.android.aaptcompiler.ResourceCompiler$getCompileMethod$2.invoke(ResourceCompiler.kt:143)
at com.android.aaptcompiler.ResourceCompiler$getCompileMethod$2.invoke(ResourceCompiler.kt)
at com.android.aaptcompiler.ResourceCompiler.compileResource(ResourceCompiler.kt:118)
... 29 more
https://m.blog.naver.com/bb_/222057194718
아니.... 아무리 봐도
<?xml version="1.0" encoding="utf-8"?>
이 코드가 중복된 것이 보이지 않더니
한 시간만에 xml 코드 중간에 이 놈이 껴있는 것을 발견하고야 말았다.....
아무리 봐도 안보여서 뭐가 문제지 ㅠㅠ 했는데 너무너무 간단한 문제였다.. 화가 난다.......
'모바일&임베디드 > 안드로이드' 카테고리의 다른 글
[Kotlin] 간단 앱 개발 (0) | 2021.06.15 |
---|---|
[Kotlin] 고급 문법2(Data class, Object, Companion Object) (0) | 2021.06.15 |
[Kotlin] 고급 문법1(Lamda, Class) (0) | 2021.06.15 |
[Kotlin] 기본 문법 (0) | 2021.06.15 |