hi @AyanDeveloper,
can you guide me how to use this block ya?
thanks!

hi @AyanDeveloper,
can you guide me how to use this block ya?
thanks!

@AyanDeveloper,
so i insert into anywhere in the line?

![]()
hi @bodymindpower,
thanks for the heads up!
Apologies, I just added the manifest
and didnât modify the Java code at all; itâs the default. I tested it this morning on an Android 15 device, and it didnât work. The changes need to be made in the manifest.
@Diego please fix this issue in new update so we donât need this kind of temporary solutions
wonât work either ![]()
I think we should wait for Kodular team to release another update
Try this (should work on all Android versions, regardless of whether the Title, StatusBar and/or Navbar is visible or not). Tested on Android 16 und 11 (Companion & APK).
TextboxOverlap.apk (5.5 MB)
How can we do this
Definitely it need to be added In extension and use it
package com.keyboardfix;
import android.app.Activity;
import android.view.View;
import android.view.ViewGroup;
import androidx.core.view.WindowInsetsCompat;
import androidx.core.view.WindowInsetsAnimationCompat;
import androidx.core.view.ViewCompat;
import com.google.appinventor.components.annotations.;
import com.google.appinventor.components.runtime.;
@DesignerComponent(
version = 1,
description = âFix keyboard overlap on Android 13â15â,
category = ComponentCategory.EXTENSION,
nonVisible = true
)
@SimpleObject(external = true)
public class KeyboardFix extends AndroidNonvisibleComponent {
private final Activity activity;
public KeyboardFix(ComponentContainer container) {
super(container.$form());
this.activity = container.$context();
}
@SimpleFunction(description = "Enable keyboard fix")
public void EnableFix() {
final View root = activity.findViewById(android.R.id.content);
ViewCompat.setOnApplyWindowInsetsListener(root, (v, insets) -> {
int imeHeight = insets.getInsets(WindowInsetsCompat.Type.ime()).bottom;
int sysBottom = insets.getInsets(WindowInsetsCompat.Type.systemBars()).bottom;
v.setPadding(
v.getPaddingLeft(),
v.getPaddingTop(),
v.getPaddingRight(),
Math.max(imeHeight, sysBottom)
);
return insets;
});
}
}
Maybe try it like this ![]()
![]()
This happens because Android 15 changed how the keyboard (IME) handles screen insets, so apps that still rely on the old adjustResize behavior (which worked fine on Android 11) no longer automatically move their layout upward when the keyboard appears; the app must now explicitly support the newer WindowInsets/WindowInsetsCompat APIs, otherwise the keyboard will overlap the screenâso if youâre a user itâs the appâs compatibility issue (try switching to 3-button navigation or enabling âresize app to fit screenâ), and if youâre a developer you need to update your layout to handle the new inset behavior.
I responded to your last posts then you deleted and reposted the same thing? Why?
But you try @Como_Nao_Jogar_LoL ⌠This is meaningful ![]()
Has anyone tested this extension so far?
Yes, the extension shifts everything above the textbox upwards, which can lead to an unsightly overlap of the action and status bars. The extensionâs two events are not triggered. Likewise, the single method doesnât need to be used and set to true. Simply dragging the extension onto the screen is sufficient.
Hereâs an example of how it should work (regardless of the bug on Android 15+ where, with the action bar hidden, the status bar no longer has a height (28 dp) but is instead covered by the app).
Android 16:
TextboxOverlap_new.apk (5.5 MB)
The App should work on all Android versions.
all the codes i input in the app are for test and not a real one ya.
the testing app is loaded with the extension from @Como_Nao_Jogar_LoL