마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

runOnUiThread 사용법

0 추천

안녕하세요! 친절한 답변 너무 감사합니다 ㅠㅠ 저는 안드로이드스튜디오를 배우지 않은 사람이라 ㅜㅜ 구글링에 의지해서 하려니 너무 어렵네요 ..
제가 올린 코드는 MainActivity.java 에 사용한 코드 입니다.
private class ConnectedBluetoothThread extends Thread {
이 안에 작성한 내용이구요.. 본문에 소스코드로 첨부했습니다. 
말씀해주신 해당 이벤트가 발생할때 라는건 제가 말한 센서 값이 일정 이상이 되었을 때 를 말씀하시는거 맞나요??
그냥 자바로 if 사용해서 변수값>=1500 이런식으로 사용하면 되나요 ㅠㅠ??

제가 작성한 스레드 안에 runOnUiThread로 ui변경 하면 될까요???


너무 아는게 없어서 죄송합니다 ㅠㅠ 정말 친절하게 알려주셨는데 ,,ㅠㅠㅠ

황제 (230 포인트) 님이 2022년 6월 3일 질문

1개의 답변

0 추천

runOnUiThread는 백그라운드 쓰레드를 메인쓰레드로 전환할 수 있도록  Activity에 제공되는 함수입니다. 따라서 백그라운드 쓰레드로부터 이벤트를 받아서 화면을 업데이트 하는 코드가 존재하는 곳에 사용하시면 됩니다.

아래처럼 두군데가 runOnUiThread가 필요할 수 있을 것 같네요.

public class MyActivity implements MyTask.Lstener {

    @Override
    public void onDataRecieved(String data) {
         // TODO :  필요한 처리
         // <-- 요기
    }
 
    @Override
   public void onFailure(Exception e) {
       // TODO : 에러처리 
       // <-- 요기
   }
 
    ...
}

 

spark (227,530 포인트) 님이 2022년 6월 3일 답변
...