본문 바로가기

Android/Activity

안드로이드/Android Activity onWindowFocusChanged 메서드란?


 < 개발 환경 >  
   작성일 : 2013.01.16
   OS 설치 버전 : Windows7 32bit  
   SDK 설치 버전 : 안드로이드 SDK 4.2 (젤리빈) / API LEVEL : 17  
   ADT 설치 버전 : 21   
   Java 설치 버전 : JDK 1.6.0_20 / JRE6 
   이클립스 설치 버전 : Indigo
   테스트단말 : 삼성 갤럭시 S2 4.0.4 (아이스크램 샌드위치)   

 < 프로젝트 적용 > 
   API LEVEL : 8  
   minSdkVersion : 8 
   targetSdkVersion : 8  
   Java Compiler Level : 1.6  
   Text file encoding : UTF-8







안드로이드/Android Activity onWindowFocusChanged 메서드란?





안드로이드 Activity에 있는 onWindowFocusChanged() 메서드가 있는데요. 이 메서드는 현재 Activty의 포커스 여부를 확인 시켜 주는 메서드 입니다.


hasFocus == true (Activity 포커스 O)

1) onCreate()

2) onResume()


hasFocus == false (Activity 포커스 X)

1) onPause()

2) onDestory()



예제 코드 입니다.


package arabiannight.tistory.com.onwindowfocuschanged;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast;

public class MainActivity extends Activity {

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		
	}
	
	public void onClick(View v) {
		startActivity(new Intent(MainActivity.this, NextActivity.class));
	}
	
	@Override
	public void onWindowFocusChanged(boolean hasFocus) {
		super.onWindowFocusChanged(hasFocus);
		
		if (hasFocus == true) {
			Toast.makeText(MainActivity.this, "화면보여짐", Toast.LENGTH_SHORT).show();
		} else {
			Toast.makeText(MainActivity.this, "화면안보임", Toast.LENGTH_SHORT).show();
		}
	}

}




파일첨부 : 


TestonWindowFocusChanged.zip




스크린샷 : 





감사합니다.