안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요!
안드로이드에서 타이머를 만들려고하는데 클래스를 하나만들고 스레드를 상속받아 실시간으로 화면(TextView)에 찍어주려 하거든요!
그런데 실행시 자꾸 오류(소스상에는 문제가 없음..)가 나네요 ㅠㅠ..
TextView(주소값)받아 오는 부분에서 에러가 생긴것 같은데 왜이러는거죠!?
class Timer extends Thread {
ABC aa = new ABC();
TextView tv = (TextView) aa.findViewById(R.id.timer); // 이부분 삭제시 실행하면 에러가 없네요..!
public void run(){
while(true){
tv.setText("...");
sleep(1000);
}
}
}
class ABC extends Activity {
..
....
Timer tt = new Thread();
tt.start();
....
..
}
안드로이드에서 타이머를 만들려고하는데 클래스를 하나만들고 스레드를 상속받아 실시간으로 화면(TextView)에 찍어주려 하거든요!
그런데 실행시 자꾸 오류(소스상에는 문제가 없음..)가 나네요 ㅠㅠ..
TextView(주소값)받아 오는 부분에서 에러가 생긴것 같은데 왜이러는거죠!?
class Timer extends Thread {
ABC aa = new ABC();
TextView tv = (TextView) aa.findViewById(R.id.timer); // 이부분 삭제시 실행하면 에러가 없네요..!
public void run(){
while(true){
tv.setText("...");
sleep(1000);
}
}
}
class ABC extends Activity {
..
....
Timer tt = new Thread();
tt.start();
....
..
}




스레드에서 액티비티 뷰에 접근할 때는 Handler를 이용해서 접근하세요~
new Handler().post(new Runnable(){
@Override
public void run() {
tv.setText("...");
}
});