자료형 불일치 오류가 뜹니다
361
작성한 질문수 4
명언 앱 만들기 강의 수강 중
Type mismatch: inferred type is ViewDataBinding! but ActivityMainBinding was expected
위와 같은 오류가 발생합니다.
binding=DataBindingUtil.setContentView(this,R.layout.activity_main)
에 빨간 밑줄이 그어집니다.
package com.junho.goodwords
import android.content.Intent
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import androidx.databinding.DataBindingUtil
import com.junho.goodwords.databinding.ActivityMainBinding
class MainActivity : AppCompatActivity() {
private lateinit var binding: ActivityMainBinding
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
binding=DataBindingUtil.setContentView(this,R.layout.activity_main)
binding.showAllSentencesBtn.setOnClickListener {
val intent= Intent(this,SentenceActivity::class.java)
startActivity(intent)
}
}
}gradle 에서는
buildFeatures{
dataBinding=true
viewBinding=true
}
로 설정하였습니다.
답변 2
1
https://www.inflearn.com/questions/1282981/%EB%B9%8C%EB%93%9C%EA%B0%80-%EB%90%98%EC%A7%80-%EC%95%8A%EC%8A%B5%EB%8B%88%EB%8B%A4?commentId=344615#344615
유사한 오류인거 같은데 잘 해결하셨나요?
잘 안되시면 전체 코드를 공유해주세요~
-1
안녕하세요, 인프런 AI 인턴입니다. Junho Moon 님.
질문하신 Type mismatch: inferred type is ViewDataBinding! but ActivityMainBinding was expected 오류는 DataBindingUtil.setContentView 메서드의 결과 타입과 변수 binding의 타입이 일치하지 않아 발생하는 문제입니다. 이와 유사한 상황을 해결한 예시가 있어, 해당 내용을 참고하시면 도움이 될 것 같습니다.
특히 [왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin) 강의 중 발생하는 이슈들과 관련하여 다음 링크가 유용할 수 있습니다:
- 명언 앱 만들기 도중 발생한 databinding 관련 질문: 개발 중 발생한 오류에 대해서는 databinding 오류 관련해서 문의드립니다에서 비슷한 해결 방식이 제시되었습니다. 이 글에서는 데이터 바인딩 오류를 다루고 있으며, 오류의 배경 및 해결 방안에 대한 설명이 포함되어 있습니다. 본 사례에서처럼
DataBindingUtil.setContentView를 사용할 때 반환되는 타입이 기대하는ActivityMainBinding과 정확히 일치해야 합니다.
문제 해결을 위해 DataBindingUtil.setContentView 메서드의 사용 방법을 점검하시고, 반환 타입을 명시적으로 ActivityMainBinding으로 캐스팅해 보실 것을 권장드립니다. 예를 들면, 다음과 같이 캐스팅을 할 수 있습니다:
binding = DataBindingUtil.setContentView(this, R.layout.activity_main) as ActivityMainBinding
이외에도 gradle 설정이 올바르게 적용되었는지 확인하시고, clean 및 rebuild 프로젝트를 시도해 보시는 것도 유용한 절차입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
주사위앱 소개 및 레이아웃 설정 문제
0
59
2
안드로이드 에뮬레이터가 실행이 안 되요...ㅠ
0
105
2
30 강 소스 좀 올려 주십시요
0
80
2
onBackPressed 함수가 동영상 하고 다르게 동작합니다.
0
89
2
ListView 초기 실행 안됩니다.
0
94
2
코딩을 완료하고난후 앱 실행시 자동 종료
0
71
2
datavinding에서 오류가 납니다.
0
51
1
안드로이드 스튜디오 버전 차이로 초기 empyt activity 선택하면 안됩니다.
0
108
2
context의 구별에 대하여
0
69
2
"프롤로그에서 ..." 오류 관련해 직전 질문에 대한 추가 질문입니다.
0
67
2
"프롤로그에서 콘텐츠가 허용되지 않습니다." 오류
0
156
3
해결완료
1
186
2
databinding 설정후 run하면 에러(해결)
0
222
2
databinding 설정 이후 실행시 에러
0
268
4
안드로이드 입문하는 사람입니다.
0
70
1
Firebase uid
0
75
3
activity_main 화면 다름
0
114
2
강의화면과 다른데 맞게진행되는것인가요...????
0
105
2
파이어베이스 질문
0
74
2
ActivityMainBinding에 오류가 납니다
0
134
2
선생님 onBackPressed 작동이 안되는거 같습니다
0
118
2
>app>res>layout 이 존재하지 않습니다.
0
119
2
안드로이드 스튜디오 미어캣 버전 사용 한글 깨짐
0
747
2
안드로이드 스튜디오 오류 발생 시 대처 방법은 요?
0
289
2





