Visitar URL original
Android edge-to-edge: layout issues when switching Navigation mode · Issue #11142 · NativeScript/NativeScript · GitHub
Skip to content

Android edge-to-edge: layout issues when switching Navigation mode #11142

Description

@felixkrautschuk

Issue Description

When starting the NativeScript app on Android, switch to Android settings, switch navigation mode (e.g. from 3-button navigation to gesture-navigation or vice versa) and resume the NativeScript app, the layout is messed up like this:

Bildschirmaufnahme.2026-03-19.um.10.52.13.mov

Reproduction

ns9test.zip

Build and run the app
switch to Android settings for navigation mode
switch from 3-button-navigation to gesture-navigation (or vice versa)
switch back to the NativeScript app -> layout is messed up

Relevant log output (if applicable)

Environment

OS: macOS 26.3.1
CPU: (12) x64 Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz
Shell: /bin/zsh
node: 22.19.0
npm: 11.6.2
nativescript: 9.0.5

# android
java: 17.0.11
ndk: Not Found
apis: 29, 35, 36, 36
build_tools: 25.0.2, 27.0.3, 28.0.3, 29.0.2, 30.0.2, 30.0.3, 32.0.0, 33.0.0, 33.0.1, 33.0.2, 34.0.0, 35.0.0, 35.0.1, 36.0.0, 36.1.0
system_images: 
  - android-28 | Google Play Intel x86_64 Atom
  - android-29 | Google Play Intel x86_64 Atom
  - android-30 | Google APIs Intel x86_64 Atom
  - android-35 | Google Play Intel x86_64 Atom
  - android-36.1 | Google Play Intel x86_64 Atom
  - android-36.1 | Pre-Release 16 KB Page Size Google Play Intel x86_64 Atom

# ios
xcode: 26.3/17C529
cocoapods: 1.16.2
python: 2.7.18
python3: 3.13.0
ruby: 2.6.10
platforms: 
  - DriverKit 25.2
  - iOS 26.2
  - macOS 26.2
  - tvOS 26.2
  - visionOS 26.2
  - watchOS 26.2

Dependencies

"dependencies": {
  "@nativescript/core": "^9.0.18-next.4"
},
"devDependencies": {
  "@nativescript/android": "^9.0.2",
  "@nativescript/ios": "^9.0.3",
  "@nativescript/webpack": "^5.0.32"
}

Please accept these terms

Activity

  1. added and removed
    bug-pending-triageReported bug, pending triage to confirm.
    on Mar 25, 2026
  2. cjohn001 commented on Jun 15, 2026

    @cjohn001

    Hello, I think I am seeing exactely the same problem. Are you also using androidOverflowEdge="dont-apply" ?

    <GridLayout rows="auto,*,auto" (loaded)="mainGridLayoutLoaded($event)" androidOverflowEdge="dont-apply" (androidOverflowInset)="onAndroidOverflowInset($event)">

    public onAndroidOverflowInset(args: AndroidOverflowInsetData) {
    if (args.inset) {
    args.inset.bottom = 0;
    args.inset.top = 0;
    args.inset.topConsumed = true;
    args.inset.bottomConsumed = true;
    args.inset.imeBottom = 0;
    args.inset.imeBottomConsumed = true;
    }
    }

    I see the layout issue when I go to the system settings and change the language settings. This seems to lead to a partial recreation of the activity. From what I found out it seems like the insets, are 0 like I have set them. However the first level of child views under the root layout gets the insets applied as padding top/bottom

    Update: Just seen you demo code. Yes same problem.
    Have you found a workaround?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions