2012-12-06 2 views
0

View를 확장하는 클래스를 만들었습니다. 이제 사용자가 무언가를 할 때 AlertDialog를 보여주고 싶습니다. 어떻게하면됩니까?View 클래스의 AlertDialog?

AlertDialog alertDialog = new AlertDialog.Builder(this).create(); 

"this"변수는 활동이어야하지만 내 클래스의 "this"는 "Drawable"이므로이 코드는 작동하지 않습니다.

+1

사용자 정의보기에 컨텍스트가있는 경우 'this'키워드 대신 사용하십시오 –

+0

12-06 20 : 28 : 29.128 : E/AndroidRuntime (9133) : java.lang.RuntimeException : 핸들러를 만들 수 없습니다. 내부 스레드를 호출하지 않은 Looper.prepare() – Piotrek

답변

0

클래스에 컨텍스트를 가져 와서 해당 인스턴스를 "this"로 바꿉니다.

+0

12-06 20 : 28 : 29.128 : E/AndroidRuntime (9133) : java.lang.RuntimeException : Looper.prepare() 호출하지 않은 스레드 내부에서 처리기를 만들 수 없습니다. – Piotrek

+0

이 코드를 다른 스레드에서 실행중인 것 같습니다. 무슨 일이 일어나는지 이해하려면 더 많은 코드가 필요합니다. 모든 UI 항목은 기본/UI 스레드에서 실행해야합니다. –