wxpython에서 사용했던 방법인데..
똑같이 구현되었는데(?) 좀 느리다..
하지만 깜박이지 않고 잘 동작한다.
import java.io.IOException; import java.net.MalformedURLException; import java.net.URL; import android.app.Fragment; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ImageView; public class DFragment extends Fragment { ImageView image; MyAsyncTask mTask; Bitmap bitmap = null; private SendMassgeHandler mMainHandler = null; private CountThread mCountThread = null; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { super.onCreateView(inflater, container, savedInstanceState); View v = inflater.inflate(R.layout.dfragment, container, false); return v; } public void onDestroy () { super.onDestroy(); mCountThread.stopThread(); Log.w("", "end"); } @Override public void onStart () { super.onStart(); image = (ImageView) getActivity().findViewById(R.id.image); mMainHandler = new SendMassgeHandler(); mCountThread = new CountThread(); mCountThread.start(); } class SendMassgeHandler extends Handler { @Override public void handleMessage(Message msg) { super.handleMessage(msg); if ( bitmap !=null) image.setImageBitmap(bitmap); } }; ⁄⁄ Thread 클래스 class CountThread extends Thread implements Runnable { private boolean isPlay = false; public CountThread() { isPlay = true; } public void isThreadState(boolean isPlay) { this.isPlay = isPlay; } public void stopThread() { isPlay = !isPlay; } @Override public void run() { super.run(); int i = 0; while (isPlay) { URL url = null; try { url = new URL("http:⁄⁄3cam25984.365home.org:82⁄snapshot.cgi?user=admin&pwd=&resolution=32"); } catch (MalformedURLException e) { ⁄⁄ TODO Auto-generated catch block e.printStackTrace(); } try { bitmap = BitmapFactory.decodeStream(url.openConnection().getInputStream()); } catch (IOException e) { ⁄⁄ TODO Auto-generated catch block e.printStackTrace(); } mMainHandler.sendEmptyMessageDelayed(0, 50); } } } }
'Android > 개념 및 예제' 카테고리의 다른 글
안드로이드 백그라운드 서비스 예제 - IntentService (0) | 2015.02.21 |
---|---|
Android WebView 예제 (0) | 2014.07.09 |
android.os.NetworkOnMainThreadException (0) | 2014.06.29 |
안드로이드의 View에 이미지 혹은 단색 배경 지정하기 (0) | 2014.05.27 |
canvas에 그림 그려서 imageview에 붙이기 (0) | 2013.07.24 |
시간날때마다 틈틈이 이것저것 해보며 블로그에 글을 남깁니다.
블로그의 문서는 종종 최신 버전으로 업데이트됩니다.
여유 시간이 날때 진행하는 거라 언제 진행될지는 알 수 없습니다.
영화,책, 생각등을 올리는 블로그도 운영하고 있습니다.
https://freewriting2024.tistory.com
제가 쓴 책도 한번 검토해보세요 ^^
그렇게 천천히 걸으면서도 그렇게 빨리 앞으로 나갈 수 있다는 건.
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!