작성
·
97
·
수정됨
답변 2
0
package com.xylbllv.myapplication
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.ImageView
import android.widget.Toast
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
// 1. 프로그램이 화면이 클릭되었다는 것을 알아야 합니다!
val image1 = findViewById<ImageView>(R.id.btsImage1)
image1.setOnClickListener {
Toast.makeText(this, "1번 클릭 완료", Toast.LENGTH_LONG).show()
}
// 2. 화면이 클릭되면, 다음 화면으로 넘어가서, 사진을 크게 보여줌!
}
}
https://www.youtube.com/watch?v=sY8Q3fLas3Q
위의 코드로 정상동작하는걸 확인했습니다
가끔 디바이스를 예전걸로 만들면 토스트메세지가 안뜰 떄가 있는데 위의 영상 참고해서 다시 만들어서 해보시겠어요?
Could not read workspace metadata from C:\Users\wjdtp\.gradle\caches\8.9\transforms\41dbf738ef9a763802d2faec6fb4c6df\metadata.bin
선생님 이 오류 메세지 때문일까요?
0
안녕하세요, 인프런 AI 인턴입니다. jepngsebin051102님.
화면의 클릭 이벤트가 발생하지 않는 문제는 여러 가지 원인일 수 있습니다. 아래와 같은 사항을 확인해 보세요:
레이아웃 파일 확인: activity_main.xml
파일에서 btsImage1
의 ID가 정확하게 설정되어 있는지 확인해 주세요. 코드에서 사용한 ID와 XML 파일의 ID가 일치해야 합니다.
프로젝트 Clean 및 Rebuild: Android Studio에서 Build
메뉴로 가서 Clean Project
와 Rebuild Project
를 시도해 보세요. 이 작업이 종종 캐시 문제를 해결해 줄 수 있습니다.
로그캣(Logcat) 확인: 앱을 실행한 후 Android Studio의 Logcat 창을 확인하여 오류 메시지가 있는지 확인해 보세요. 오류 메시지가 있다면, 그 내용을 바탕으로 문제를 진단할 수 있습니다.
이미지 뷰 추가 위치 확인: onCreate
함수 안에 모든 findViewById
및 이벤트 리스너 등록 코드가 들어가는지 확인하세요. 또한 setContentView
호출 후에만 실행해야 합니다.
비슷한 사례와 도움을 받을 수 있는 질문들은 아래 링크들을 참고해 주세요:
intend 코드가 들어가면 앱이 동작하지 않습니다..
화면 클릭 이벤트 처리 - findViewById, Toast
화면 클릭 이벤트 처리 - findViewById, Toast 에서 07:08 에서 문제가 생겼습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
<?xml version="1.0" encoding="utf-8"?> <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:id="@+id/main" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".MainActivity"> <LinearLayout android:layout_width="match_parent" android:layout_height="120dp"> <ImageView android:id="@+id/btsImage1" android:src="@drawable/bts_1" android:layout_width="120dp" android:layout_height="120dp"/> <ImageView android:src="@drawable/bts_2" android:layout_width="120dp" android:layout_height="120dp"/> <ImageView android:src="@drawable/bts_3" android:layout_width="120dp" android:layout_height="120dp"/> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="120dp"> <ImageView android:src="@drawable/bts_4" android:layout_width="120dp" android:layout_height="120dp"/> <ImageView android:src="@drawable/bts_5" android:layout_width="120dp" android:layout_height="120dp"/> <ImageView android:src="@drawable/bts_6" android:layout_width="120dp" android:layout_height="120dp"/> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="120dp"> <ImageView android:src="@drawable/bts_7" android:layout_width="120dp" android:layout_height="120dp"/> </LinearLayout> </LinearLayout>