Files
sb-front/android/app/src/main/java/kr/sblog/slimbudget/MainActivity.java
T

32 lines
1.3 KiB
Java
Raw Normal View History

package kr.sblog.slimbudget;
import android.os.Bundle;
import android.view.View;
import androidx.core.graphics.Insets;
import androidx.core.view.ViewCompat;
import androidx.core.view.WindowCompat;
import androidx.core.view.WindowInsetsCompat;
import com.getcapacitor.BridgeActivity;
public class MainActivity extends BridgeActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
registerPlugin(CardNotifPlugin.class);
super.onCreate(savedInstanceState);
// targetSdk 35+ 의 에지투에지 강제 환경에서 콘텐츠가 상태바/소프트키 뒤로 깔리는 것을 방지.
// 구글 권장 패턴: 콘텐츠 루트에 시스템 바 인셋만큼 패딩을 적용하고 인셋을 소비(CONSUMED)한다.
// → 헤더는 상태바 아래, 하단 고정 내비는 소프트키 위에 위치.
WindowCompat.setDecorFitsSystemWindows(getWindow(), false);
final View content = findViewById(android.R.id.content);
ViewCompat.setOnApplyWindowInsetsListener(content, (v, windowInsets) -> {
Insets bars = windowInsets.getInsets(WindowInsetsCompat.Type.systemBars());
v.setPadding(bars.left, bars.top, bars.right, bars.bottom);
return WindowInsetsCompat.CONSUMED;
});
ViewCompat.requestApplyInsets(content);
}
}