해결된 질문
작성
·
307
0
안녕하세요 질문이 있습니다!
주사위 관련 부분을 듣고 있는데 databinding 부분에서 에러가 발생해서 진행이 되지 않고 있습니다.
gradle에서 dataBinding을 추가해주고 activity_xml에서 Layout으로 전체 문장을 감싸는 부분부터 빨간 줄이 생겼습니다.
MainActivity에서도 'Private lateinit var binding : ActivityMainBinding' 이 문장을 임포트 하지 못하고 있는데 혹시 버전 차이로 진행을 못하는 건가요?
해결 방법이 있을까요ㅠㅠ
답변 1
0
package com.example.inflearn_dice
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.util.Log
import android.widget.Toast
import androidx.databinding.DataBindingUtil
import kotlin.random.Random
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)
val diceImage1 = binding.dice1
val diceImage2 = binding.dice2
binding.diceStartBtn.setOnClickListenter{
Toast.makeText(this,"주사위 GO",Toast.LENGTH_LONG).show()
Log.d("MainActivity", Random.nextInt(1,6).toString())
Log.d("MainActivity", Random.nextInt(1,6).toString())
val number1 = Random.nextInt(1,6).toString()
val number2 = Random.nextInt(1,6).toString()
if(number1 == 1){
diceImage1.setImageResource(R.drawable.dice_1)
} else if(number1 == 2){
diceImage1.setImageResource(R.drawable.dice_2)
} else if(number1 == 3){
diceImage1.setImageResource(R.drawable.dice_3)
} else if(number1 == 4){
diceImage1.setImageResource(R.drawable.dice_4)
} else if(number1 == 5){
diceImage1.setImageResource(R.drawable.dice_5)
} else{
diceImage1.setImageResource(R.drawable.dice_6)
}
if(number2 == 1){
diceImage2.setImageResource(R.drawable.dice_1)
} else if(number2 == 2){
diceImage2.setImageResource(R.drawable.dice_2)
} else if(number2 == 3){
diceImage2.setImageResource(R.drawable.dice_3)
} else if(number2 == 4){
diceImage2.setImageResource(R.drawable.dice_4)
} else if(number2 == 5){
diceImage2.setImageResource(R.drawable.dice_5)
} else{
diceImage2.setImageResource(R.drawable.dice_6)
}
}
}
}
그리고
위의 부분을 아래처럼 변경해주세요 <> 가 잘못들어간거 같아요
binding = DataBindingUtil.setContentView<>(this,R.layout.activity_main)
binding = DataBindingUtil.setContentView(this,R.layout.activity_main)