DataBinding
안녕하세요 질문이 있습니다!
주사위 관련 부분을 듣고 있는데 databinding 부분에서 에러가 발생해서 진행이 되지 않고 있습니다.
gradle에서 dataBinding을 추가해주고 activity_xml에서 Layout으로 전체 문장을 감싸는 부분부터 빨간 줄이 생겼습니다.
MainActivity에서도 'Private lateinit var binding : ActivityMainBinding' 이 문장을 임포트 하지 못하고 있는데 혹시 버전 차이로 진행을 못하는 건가요?
해결 방법이 있을까요ㅠㅠ
답변 1
0
안녕하세요
xml 부분과 activity 코드를 전체 복사해서 공유해주시겠어요?
0
<?xml version="1.0" encoding="utf-8"?>
<Layout>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#1EBD6B"
tools:context=".MainActivity"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="200dp"
android:layout_marginTop="100dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="30sp"
android:textColor="#000000"
android:textStyle="bold"
android:layout_margin="20dp"
android:gravity="center"
android:text="주사위 한방"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="200dp"
android:weightSum="2">
<ImageView
android:id="@+id/dice1"
android:src="@drawable/dice_1"
android:layout_width="120dp"
android:layout_height="120dp"
android:layout_weight="1"/>
<ImageView
android:id="@+id/dice2"
android:src="@drawable/dice_1"
android:layout_width="120dp"
android:layout_height="120dp"
android:layout_weight="1"/>
</LinearLayout>
<Button
android:id="@+id/diceStartBtn"
android:text="인생 고고"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="@color/white"
android:layout_margin="50dp"
android:background="@color/black"/>
</LinearLayout>
</Layout>
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)
}
}
}
}
0
그리고
위의 부분을 아래처럼 변경해주세요 <> 가 잘못들어간거 같아요
binding = DataBindingUtil.setContentView<>(this,R.layout.activity_main)binding = DataBindingUtil.setContentView(this,R.layout.activity_main)
주사위앱 소개 및 레이아웃 설정 문제
0
61
2
안드로이드 에뮬레이터가 실행이 안 되요...ㅠ
0
109
2
30 강 소스 좀 올려 주십시요
0
82
2
onBackPressed 함수가 동영상 하고 다르게 동작합니다.
0
92
2
ListView 초기 실행 안됩니다.
0
97
2
코딩을 완료하고난후 앱 실행시 자동 종료
0
73
2
datavinding에서 오류가 납니다.
0
54
1
안드로이드 스튜디오 버전 차이로 초기 empyt activity 선택하면 안됩니다.
0
117
2
context의 구별에 대하여
0
71
2
"프롤로그에서 ..." 오류 관련해 직전 질문에 대한 추가 질문입니다.
0
71
2
"프롤로그에서 콘텐츠가 허용되지 않습니다." 오류
0
161
3
해결완료
1
188
2
databinding 설정후 run하면 에러(해결)
0
226
2
databinding 설정 이후 실행시 에러
0
274
4
안드로이드 입문하는 사람입니다.
0
72
1
Firebase uid
0
79
3
activity_main 화면 다름
0
117
2
강의화면과 다른데 맞게진행되는것인가요...????
0
108
2
파이어베이스 질문
0
76
2
ActivityMainBinding에 오류가 납니다
0
136
2
선생님 onBackPressed 작동이 안되는거 같습니다
0
121
2
>app>res>layout 이 존재하지 않습니다.
0
120
2
안드로이드 스튜디오 미어캣 버전 사용 한글 깨짐
0
754
2
안드로이드 스튜디오 오류 발생 시 대처 방법은 요?
0
291
2





