Android

(Method)onWindowFocusChanged

ktko 2016. 4. 25. 00:13

안드로이드 Activity에서 onWindowFocusChanged()라는 Method가 있다. 이것은 해당 Activity가 보여지고 있는지 즉 포커스가 있는 상태인지 확인해주는 메소드입니다.



아래 예제를 보면 onWindowFocusChanged(boolean hasFocus) 에 따라 분기를 태운 것을 알 수 있습니다.

hasFocus가 True이면 해당 액티비티의 포커스가 있다는 것이고 False면 액티비티에 포커스가 없다는 것을 의미합니다.



package com.programmer.ktko.myapplication;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    @Override
    public void onWindowFocusChanged(boolean hasFocus) {
        if(hasFocus)
            Toast.makeText(this,"Main Activity가 보입니다", Toast.LENGTH_SHORT).show();
        else
            Toast.makeText(this,"Main Activity가 안보입니다", Toast.LENGTH_SHORT).show();
    }
}