Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

KeyboardAvoidingView does not work on standalone app [Android]. #2172

Open
gerardo15 opened this issue Sep 3, 2018 · 74 comments
Assignees
Milestone

Comments

@gerardo15
Copy link

@gerardo15 gerardo15 commented Sep 3, 2018

Hello.

I have taken this code from a premium theme that i bought.

<SafeAreaView style={styles.container}>
                <NavHeader title={thread.name} {...{navigation}} />
                <FlatList
                    inverted
                    data={messages}
                    keyExtractor={message => `${message.date}`}
                    renderItem={({ item }) => (
                        <Msg message={item} name={item.me ? name : thread.name} picture={thread.picture} />
                    )}
                />
                <KeyboardAvoidingView behavior={Platform.OS === "ios" ? "padding" : "height"}>
                    <View style={styles.footer}>
                        <TextInput
                            style={styles.input}
                            placeholder="Write a message"
                            value={this.state.message}
                            onChangeText={message => this.setState({ message })}
                            blurOnSubmit={false}
                            returnKeyType="send"
                            onSubmitEditing={this.send}
                            underlineColorAndroid="transparent"
                        />
                        <TouchableOpacity primary transparent onPress={this.send}>
                            <Text style={styles.btnText}>Send</Text>
                        </TouchableOpacity>
                    </View>
                </KeyboardAvoidingView>
            </SafeAreaView>

Its a chat View, it works perfect on Expo testing, but as soon as I build APK standalone it does not work, the keyboard will cover the whole screen.

I have tried react-native-keyboard-aware-scroll-view but in order to use its needed to detach the app.

I have searched the whole internet. I'm the only one suffering from this issue?

@gerardo15 gerardo15 changed the title KeyboardAvoidingView does not work on standalone app. KeyboardAvoidingView does not work on standalone app [Android]. Sep 3, 2018
@FabianEhringer

This comment has been minimized.

Copy link

@FabianEhringer FabianEhringer commented Sep 5, 2018

+1

We are experiencing the same issue.
Testing the app in expo on the simulator or on a device, Android and iOS resizes the view as expected, but on the standalone app built on expo the view doesn't resize when opening the keyboard for Android.

We tested an apk built with expo on the 17th of July where the resize of views works in the standalone build. Rebuilding with the same codebase (from the 17th of July) and the current expo build process breaks the resizing of views.

We suspect that the problem originates from the windowSoftInputMode that might not be set correctly to adjustResize in the AndroidManifest.xml during the expo build or somehow has no effect.

Environment
Expo sdk version: 28 / 29
Platform: Android

@freshedgarT

This comment has been minimized.

Copy link

@freshedgarT freshedgarT commented Sep 5, 2018

+1

We are also faced with this issue.

@SeiboldDS

This comment has been minimized.

Copy link

@SeiboldDS SeiboldDS commented Sep 5, 2018

+1
same here

@eyisus

This comment has been minimized.

Copy link

@eyisus eyisus commented Sep 5, 2018

+1 having the same issue right now

@hendra1

This comment has been minimized.

Copy link

@hendra1 hendra1 commented Sep 7, 2018

Me too.. it's very critiical issue..
expo team should fix this issue as soon as possible

@FabianEhringer

This comment has been minimized.

Copy link

@FabianEhringer FabianEhringer commented Sep 7, 2018

I agree. All of our Android users can't see what they are typing at the moment...

@satya164

This comment has been minimized.

Copy link
Member

@satya164 satya164 commented Sep 7, 2018

I have tried react-native-keyboard-aware-scroll-view but in order to use its needed to detach the app.

Why would you need to detach to use it?

@gerardo15

This comment has been minimized.

Copy link
Author

@gerardo15 gerardo15 commented Sep 7, 2018

@satya164 in order to change windowSoftInputMode in the android manifest values you have to detach

@hendra1

This comment has been minimized.

Copy link

@hendra1 hendra1 commented Sep 7, 2018

It useless using other package
I have tried but the issue still exist.
Keyboard covering the view and text input

@expo team please fix this issue
We can’t deliver our apps to play Store

@esamelson

This comment has been minimized.

Copy link
Member

@esamelson esamelson commented Sep 7, 2018

Could someone experiencing this issue provide a fully-working, minimal repro (a snack would be great) that works in the expo client but fails when the same code is built into a standalone app?

@hendra1

This comment has been minimized.

Copy link

@hendra1 hendra1 commented Sep 8, 2018

@esamelson
Below I attached my login script

and here is my package.json

`
{
"name": "StrapFlatApp",
"version": "8.2.0",
"private": true,
"devDependencies": {
"babel-eslint": "7.2.3",
"babel-preset-react-native-stage-0": "^1.0.1",
"eslint": "4.4.1",
"eslint-plugin-flowtype": "2.35.0",
"eslint-plugin-import": "2.7.0",
"eslint-plugin-jsx-a11y": "6.0.2",
"eslint-plugin-prettier": "2.1.2",
"eslint-plugin-react": "7.1.0",
"eslint-plugin-react-native": "3.0.1",
"flow-bin": "0.52.0",
"flow-typed": "2.1.5",
"husky": "0.14.3",
"jest": "20.0.4",
"jest-expo": "19.0.5",
"prettier": "1.5.3",
"react-test-renderer": "16.0.0-alpha.12"
},
"scripts": {
"postinstall": "remotedev-debugger",
"start": "react-native start",
"android": "react-native run-android",
"ios": "react-native run-ios",
"test": "jest && eslint .",
"precommit": "yarn test"
},
"jest": {
"preset": "react-native",
"transformIgnorePatterns": [
"node_modules/(?!(react-native|lottie-react-native|expo|react-native-maps|react-native-svg|react-native-branch|native-base-shoutem-theme|react-native-easy-grid|react-native-drawer|react-native-vector-icons|react-native-keyboard-aware-scroll-view|react-native-swiper|react-navigation|native-base|@expo|react-native-scrollable-tab-view|react-native-simple-modal|react-native-iphone-x-helper)/)"
]
},
"dependencies": {
"color": "1.0.3",
"jest-cli": "20.0.4",
"lodash": "4.13.1",
"moment": "2.13.0",
"native-base": "2.3.10",
"react": "16.2.0",
"react-native": "0.52.0",
"react-native-calendars": "1.5.6",
"react-native-carousel-view": "^0.5.1",
"react-native-easy-grid": "0.1.15",
"react-native-modalbox": "1.4.2",
"react-native-vector-icons": "4.3.0",
"react-navigation": "1.2.1",
"react-redux": "5.0.5",
"redux": "3.7.2",
"redux-form": "7.0.3",
"redux-persist": "4.8.3",
"redux-thunk": "2.2.0",
"remote-redux-devtools": "0.5.0",
"remote-redux-devtools-on-debugger": "^0.8.0"
}
}

`

Login.zip

@freshedgarT

This comment has been minimized.

Copy link

@freshedgarT freshedgarT commented Sep 11, 2018

We seem to have found the issue causing the failure.
Here is a repo reproducing the failure.
The screen resizes properly and keeps the input on top of the keyboard in expo on the simulator.
After building the standalone app for android and running the .apk on the same simulator, the screen doesn't resize and the input is hidden by the keyboard.

Changing "splash": { "resizeMode": "cover" } to "splash": { "resizeMode": "contain" } in app.json fixes the issue we faced.

Is this intentional behavior or a bug with expo build?

@gerardo15

This comment has been minimized.

Copy link
Author

@gerardo15 gerardo15 commented Sep 12, 2018

Well @freshedgarT that actually fix my issue!

What is the drawback of using contain there?

@hounsellal

This comment has been minimized.

Copy link

@hounsellal hounsellal commented Sep 16, 2018

The drawback is that the splash screen will be framed by a white border (or another solid color depending on your settings: https://docs.expo.io/versions/latest/guides/splash-screens).

As a temporary workaround I've created a splash screen with a plain white background (instead of the gradient background I usually use) so it's not as noticeable. I then have a separate "splash" key for both iOS and Android. My iOS splash uses "cover" and my gradient background and my Android splash uses "contain" with the solid white background.

Would be great to have this issue fixed.

@RobertFischer

This comment has been minimized.

Copy link

@RobertFischer RobertFischer commented Sep 25, 2018

We seem to have found the issue causing the failure.
Here is a repo reproducing the failure.
The screen resizes properly and keeps the input on top of the keyboard in expo on the simulator.
After building the standalone app for android and running the .apk on the same simulator, the screen doesn't resize and the input is hidden by the keyboard.

Changing "splash": { "resizeMode": "cover" } to "splash": { "resizeMode": "contain" } in app.json fixes the issue we faced.

It doesn't fix the issue for us -- we already had contain for our resizeMode, and we're seeing this issue.

@jalchr

This comment has been minimized.

Copy link

@jalchr jalchr commented Oct 11, 2018

+1
Any plans to fix this ?

@jorgeants

This comment has been minimized.

Copy link

@jorgeants jorgeants commented Oct 25, 2018

+1
I'm with same issue too.

@schlaxel

This comment has been minimized.

Copy link

@schlaxel schlaxel commented Oct 31, 2018

+1
I have the same issue

@bellini666

This comment has been minimized.

Copy link

@bellini666 bellini666 commented Nov 16, 2018

+1 here

The workaround proposed by @freshedgarT did solve the issue for me.

@hounsellal the drawback you commented can be easily bypassed by making your splash screen background transparent and defining a backgroundColor in the splash section. You can't have a gradient background that way but it's better than a white one =P

@RobertFischer be sure to generate a new apk. That is one of the changes that publish by itself is not enough. I'm saying that because I thought the workaround did not work after publishing, but after building an apk and installing it by hang everything worked great.

obs. I'm using expo sdk 30

@ljuborados

This comment has been minimized.

Copy link

@ljuborados ljuborados commented Dec 15, 2018

The workaround isn't working for me, built the new APK but still adjustResize not working at all.

@andresmtz98

This comment has been minimized.

Copy link

@andresmtz98 andresmtz98 commented Jan 3, 2019

+1 same issue :/

@arrygoo

This comment has been minimized.

Copy link
Contributor

@arrygoo arrygoo commented Jan 7, 2019

Seeing this again on Expo 31 :(

@mylo

This comment has been minimized.

Copy link

@mylo mylo commented Jan 15, 2019

Any news on this ?

@WulffHunter

This comment has been minimized.

Copy link

@WulffHunter WulffHunter commented Feb 1, 2019

Getting this issue as well. Looks like it's a problem with Expo not detecting the soft navigation bar's height when it's not been pinned. I tried the "contain" fix and... nothing. ¯\_(ツ)_/¯

@pedramvdl31

This comment has been minimized.

Copy link

@pedramvdl31 pedramvdl31 commented Feb 3, 2019

I had the same issue adding flex: 1 to KeyboardAvoidingView fixed my problem:

            <KeyboardAvoidingView style={{ flex: 1 }} behavior={"padding"} >

                <ScrollView >

                    <Card>

                        <CardItem header bordered>
                            <Text>Personal Information</Text>
                        </CardItem>

                        <CardItem bordered>

                            <Body>

                                <Item floatingLabel style={styles.item}>
                                    <Label>Full Name</Label>
                                    <Input />
                                </Item>

                                <Item floatingLabel style={styles.item}>
                                    <Label>Headline</Label>
                                    <Input />
                                </Item>

                                <Item floatingLabel style={styles.item}>
                                    <Label>Location</Label>
                                    <Input />
                                </Item>

                                <Item floatingLabel style={styles.item}>
                                    <Label>Email</Label>
                                    <Input />
                                </Item>

                                <Item floatingLabel style={styles.item}>
                                    <Label>Phone Number</Label>
                                    <Input />
                                </Item>
                                <Item floatingLabel style={styles.item}>
                                    <Label>Phone Number</Label>
                                    <Input />
                                </Item>
                                <Item floatingLabel style={styles.item}>
                                    <Label>Phone Number</Label>
                                    <Input />
                                </Item>

                            </Body>
                            
                        </CardItem>

                    </Card>

                    <ListItem>

                        <Left>
                            <Text>Make my Profile Public</Text>
                        </Left>

                        <Right>
                            <Switch value={this.state.publicProfileRadioValue}
                                onValueChange={(value) => this.setState({ publicProfileRadioValue: value })}
                            />
                        </Right>
                        
                    </ListItem>

                </ScrollView>

            </KeyboardAvoidingView>
@seanpascoe

This comment has been minimized.

Copy link

@seanpascoe seanpascoe commented Jul 23, 2019

This is really screwy. I'm on sdk33 and can't figure out a way to solve this. Everything works perfectly in expo, breaks as standalone apk. Building for every debug attempt is horrible.

@Slapbox

This comment has been minimized.

Copy link

@Slapbox Slapbox commented Jul 24, 2019

@seanpascoe, when you say "standalone apk" do you just mean the output of running expo publish ? For some reason Expo needs undefined behavior in one environment and padding in another for me, but I don't remember which is for DEV and which is for PROD. It should be pretty easy to test.

Please consider opening a bug report for this. It's on my list, but towards the bottom.

@seanpascoe

This comment has been minimized.

Copy link

@seanpascoe seanpascoe commented Jul 24, 2019

@Slapbox by "standalone apk" I mean the result of expo build:android.

@Slapbox

This comment has been minimized.

Copy link

@Slapbox Slapbox commented Jul 24, 2019

@seanpascoe

const behavior = process.env.NODE_ENV === 'production' ? 'padding' : undefined;
return <KeyboardAvoidingView behavior={behavior} />

This works for me to have proper behavior in DEV and PROD, but this can't possibly be intentional. If this fixes your issue, please please please open a bug report, otherwise I will when I can, but it could be weeks before I have the time to file the complete issue template and supporting data.

@seanpascoe

This comment has been minimized.

Copy link

@seanpascoe seanpascoe commented Jul 25, 2019

@Slapbox I tried something like that, though used Constants.appOwnership. The problem is that KAV with 'padding' is not consistent for Android (for me). I am using a <View/> for android and it is working fine in expo (shrinks via padding automatically), but not when built. Where do you want me to open a bug report? Is this github issue not enough?

@Slapbox

This comment has been minimized.

Copy link

@Slapbox Slapbox commented Jul 25, 2019

@seanpascoe this issue pre-dates the current issue (I only know because it worked fine in Expo 31.)

It's possible this is the same issue and it was introduced, removed, and re-introduced in Expo 33, I'm not sure. This issue also uses the word "standalone" confusingly, since it's just a published Expo app, not "standalone" in the context Expo uses it, which might hamper resolution.

@seanpascoe

This comment has been minimized.

Copy link

@seanpascoe seanpascoe commented Jul 26, 2019

@Slapbox I created a new issue: #5073. I'm not sure if it aligns exactly with your problem but you can check it out.

@Mushud

This comment has been minimized.

Copy link

@Mushud Mushud commented Aug 16, 2019

I had the same issue, but I fixed it.

<KeyboardAvoidingView
        style={{flex: 1, justifyContent: 'center'}}
        keyboardVerticalOffset={30}
        behavior={Platform.OS === "ios" ? 'padding' : 'height'}
      >

It worked for the standalone app

@BBARLOCCO

This comment has been minimized.

Copy link

@BBARLOCCO BBARLOCCO commented Aug 23, 2019

Hi! I had the same issue, on SDK 31 it was working with the "contain" workaround, but now (currently on SDK 33) it's broken.
The workaround that worked this time was to set splash on android on with "resizeMode":"native" (also added the "padding" behavior on the KeyboardAwareScrollView ), hope this is solved soon, great work with expo!

@powerpovar

This comment has been minimized.

Copy link

@powerpovar powerpovar commented Aug 28, 2019

Have the same issue in SDK33.
Any updates?

@bbarthec bbarthec self-assigned this Sep 4, 2019
@ajrn-riguy

This comment has been minimized.

Copy link

@ajrn-riguy ajrn-riguy commented Sep 5, 2019

@BBARLOCCO - Did you use KeyboardAwareScrollView around the iOS portion as well? Could you show an overview of the code in your component (iOS vs Android setup) please? 🙏I'm running into this issue when using GiftedChat and I can't quite seem to find the right combination (OS specific splash screen setting, to use KAV or KASV, padding behavior, prod/dev etc). The fact that there's so many variables for this is disheartening.

@dhcmega

This comment has been minimized.

Copy link

@dhcmega dhcmega commented Sep 5, 2019

Using "native" for android fixed the problem but there is no splash in my case. So maybe just any word for resizeMode would work, haven't tested.
So, no splash or no KAView

@BBARLOCCO

This comment has been minimized.

Copy link

@BBARLOCCO BBARLOCCO commented Sep 5, 2019

hi @ajrn-riguy , im using it in both Android and iOS, using expo 33, android.splash.resizeMode "native"
this is my kascrollview code:
`<KeyboardAwareScrollView resetScrollToCoords={{ x: 0, y: 0 }}
viewIsInsideTabBar={false}
extraScrollHeight={Platform.OS === "ios" ? 70 : -53}
contentContainerStyle={[{minHeight: 532},{someOtherStyle},{overflow:"hidden"}]}
style={[this.IS_IPHONE_X ?{height:88}:Platform.OS === 'ios' ? {height:65}:{},{zIndex:50}]}
scrollEnabled={true}
enableAutomaticScroll={true}
>

					{this.showChildren()}
				</KeyboardAwareScrollView>`

hope you find your solution!

@ajrn-riguy

This comment has been minimized.

Copy link

@ajrn-riguy ajrn-riguy commented Sep 9, 2019

Thanks @BBARLOCCO . On SDK 34, after setting android.splash.resizeMode to "native", I was able to use it with just the basics:
<KeyboardAvoidingView style={{ flex: 1 }}> <GiftedChat ... /> </KeyboardAvoidingView>
Thanks for your help! Two days later, a one-word setting change fixed it...🤪

@michaelAdewunmi

This comment has been minimized.

Copy link

@michaelAdewunmi michaelAdewunmi commented Oct 2, 2019

Thanks @BBARLOCCO . On SDK 34, after setting android.splash.resizeMode to "native", I was able to use it with just the basics:
<KeyboardAvoidingView style={{ flex: 1 }}> <GiftedChat ... /> </KeyboardAvoidingView>
Thanks for your help! Two days later, a one-word setting change fixed it...🤪

This didn't fix it for me. And it's so annoying building APKs for every single change I make. It's frustrating! I hope I get a fix soon.

@riguy14

This comment has been minimized.

Copy link

@riguy14 riguy14 commented Oct 2, 2019

Hey @michaelAdewunmi, unless you're changing something in app.json each time, you could build an APK that points at a development channel and then publish to that channel to do an OTA update for each change you want to test. I was doing the same thing as you and this cut my dev cycle way down.

@michaelAdewunmi

This comment has been minimized.

Copy link

@michaelAdewunmi michaelAdewunmi commented Oct 2, 2019

Hey @michaelAdewunmi, unless you're changing something in app.json each time, you could build an APK that points at a development channel and then publish to that channel to do an OTA update for each change you want to test. I was doing the same thing as you and this cut my dev cycle way down.

Hello @riguy14. I just read about this now after seeing your comment. You are just about to save a life Bro 😀. I dont know if i understood what I read well but based on what you said and what I read on expo, this is what i need to do expo build:android --release-channel {my-channel}.

I will try this now and get back to you. Thanks a lot.

@michaelAdewunmi

This comment has been minimized.

Copy link

@michaelAdewunmi michaelAdewunmi commented Oct 3, 2019

Hi! I had the same issue, on SDK 31 it was working with the "contain" workaround, but now (currently on SDK 33) it's broken.
The workaround that worked this time was to set splash on android on with "resizeMode":"native" (also added the "padding" behavior on the KeyboardAwareScrollView ), hope this is solved soon, great work with expo!

Hello @BBARLOCCO @riguy14 , Thannks for the help so far. I am presently on SDK 33. I changed my android.splash.resizeMode to "native" but it throws this warning when building the apk - Splash resizeMode is set to 'native', but you haven't provided any images for different DPIs. Be aware that your splash image will be used as xxxhdpi asset and its actual size will be different depending on device's DPI. .

It then exits with the error Field: splash.resizeMode - should be equal to one of the allowed values. Couldn't publish because errors were found. (See logs above.) Please fix the errors and try again. I know I must be missing something.

Even though I set the values for mdpi, hdpi, xhdpi, xxhdpi and xxxhdpi (although to the same png image as when I used "cover") I still got the same error. Please help me with any pointers to know what I could be doing wrong. Thanks a lot!

@michaelAdewunmi

This comment has been minimized.

Copy link

@michaelAdewunmi michaelAdewunmi commented Oct 3, 2019

Hello @BBARLOCCO @riguy14 . I Finally got it to work 😄 thanks to @BBARLOCCO solution with little addition of the "flex:1" to contentContainerStyle and style.

This was what worked for me <KeyboardAwareScrollView resetScrollToCoords={{ x: 0, y: 0 }} viewIsInsideTabBar={false} contentContainerStyle={[{minHeight: 532}, {overflow:"hidden", flex: 1}]} style={[Platform.OS === 'ios' ? {height:65}:{},{zIndex:50, flex: 1}]} scrollEnabled={true} enableAutomaticScroll={true}>RenderChildren()</KeyboardAwareScrollView >

I initially have my expo.splash.resizeMode set to "native" and this was the cause of the initial error. This was a mistake on my part as the required change was supposed to be done on expo.android.splash.resizeMode. I hope this helps anyone who might also be making this error. Oh and Thanks @riguy14 for the development channel builds and publishing. It has been a life saver.

Once again, Thanks guys! 👍

@Slapbox

This comment has been minimized.

Copy link

@Slapbox Slapbox commented Oct 3, 2019

That craziness is exactly what shouldn't be needed though.

@satya164, @esamelson - Is the cause of this know, and if so, has a specific fix been planned yet? Not trying to rush things, just hoping for an update.

@MindFreeze

This comment has been minimized.

Copy link

@MindFreeze MindFreeze commented Oct 4, 2019

Just found out that if the StatusBar is hidden on android it breaks the KeyboardAware stuff. Even the keyboardDidShow event reports wrong height for the keyboard, so I can't handle it manually. This is with "resizeMode" "contain" or "native"

@BBARLOCCO

This comment has been minimized.

Copy link

@BBARLOCCO BBARLOCCO commented Oct 10, 2019

hi there, we are having this issue since V31, do you know if its ever going to be fixed? Right now we have to set resizeMode on "native" in order to have keyboard avoiding scrolll.. this is crazy! And many clients want big pictures on their splash, with native is imposible to make this happen in al resolutions without "empty" spaces....

@pedrinhok

This comment has been minimized.

Copy link

@pedrinhok pedrinhok commented Oct 10, 2019

Hi there!

I had been facing this problem for a few days and I finally managed to fix it. I had the following:

<KeyboardAvoidingView
  behavior={Platform.select({ android: null, ios: 'padding' })}
  style={{ flex: 1 }}
>
  <ScrollView
    contentContainerStyle={{ flex: 1 }}
    keyboardShouldPersistTaps='handled'
  >
    {children}
  </ScrollView>
</KeyboardAvoidingView>

It was working great on both simulators and devices (through Expo Client). When I built for iOS, it worked as expected. However, when I built for Android, the view didn't scroll and the keyboard covered the input.

I tested different configurations (as provided in other comments) and the only one that worked for me was setting the behavior to height on Android:

<KeyboardAvoidingView
  behavior={Platform.select({ android: 'height', ios: 'padding' })}
  style={{ flex: 1 }}
>

Hope it solves your problem too!

@SimonFricker

This comment has been minimized.

Copy link

@SimonFricker SimonFricker commented Oct 24, 2019

+1

@Slapbox

This comment has been minimized.

Copy link

@Slapbox Slapbox commented Oct 24, 2019

This issue thread is become a hundred people posting virtually identical code to workaround this...

@esamelson @satya164 can you possibly update us on the status of this? It's been open for over a year and it seems really fundamental to me.

@IamAhsanMani

This comment has been minimized.

Copy link

@IamAhsanMani IamAhsanMani commented Oct 28, 2019

@

Hi there!

I had been facing this problem for a few days and I finally managed to fix it. I had the following:

<KeyboardAvoidingView
  behavior={Platform.select({ android: null, ios: 'padding' })}
  style={{ flex: 1 }}
>
  <ScrollView
    contentContainerStyle={{ flex: 1 }}
    keyboardShouldPersistTaps='handled'
  >
    {children}
  </ScrollView>
</KeyboardAvoidingView>

It was working great on both simulators and devices (through Expo Client). When I built for iOS, it worked as expected. However, when I built for Android, the view didn't scroll and the keyboard covered the input.

I tested different configurations (as provided in other comments) and the only one that worked for me was setting the behavior to height on Android:

<KeyboardAvoidingView
  behavior={Platform.select({ android: 'height', ios: 'padding' })}
  style={{ flex: 1 }}
>

Hope it solves your problem too!

thank you man you save me

@esamelson

This comment has been minimized.

Copy link
Member

@esamelson esamelson commented Oct 29, 2019

Hi all -- I'm sorry that we haven't been responsive to this issue. Apologies for the trouble this is continually causing.

We need a fully reproducible example in order to debug this issue. In the 72 comments on this thread, I have not found a single example I could use to successfully reproduce the issue -- which to be clear is that KeyboardAvoidingView is behaving differently in the Expo client than in standalone apps -- nor have I been able to find a repro case myself. 😞 Pasting code blocks into comments is not helpful in this case as we need the entire context of the app -- including import statements, app.json settings, etc. -- in order to reproduce the issue.

Could someone experiencing this issue please post a full MCVE that reproduces KeyboardAvoidingView behaving differently in the Expo client and standalone apps? Either a github repo or a snack (that can be easily copied + pasted and built into a standalone app) would be appropriate. Thank you!

@freshedgarT

This comment has been minimized.

Copy link

@freshedgarT freshedgarT commented Oct 30, 2019

Hi all -- I'm sorry that we haven't been responsive to this issue. Apologies for the trouble this is continually causing.

We need a fully reproducible example in order to debug this issue. In the 72 comments on this thread, I have not found a single example I could use to successfully reproduce the issue -- which to be clear is that KeyboardAvoidingView is behaving differently in the Expo client than in standalone apps -- nor have I been able to find a repro case myself. 😞 Pasting code blocks into comments is not helpful in this case as we need the entire context of the app -- including import statements, app.json settings, etc. -- in order to reproduce the issue.

Could someone experiencing this issue please post a full MCVE that reproduces KeyboardAvoidingView behaving differently in the Expo client and standalone apps? Either a github repo or a snack (that can be easily copied + pasted and built into a standalone app) would be appropriate. Thank you!

#2172 (comment)
This is my comment from September, in which a fully reproducible demo of the bug was provided.

Since then in SDK 33 the behavior of resizeMode: contain and resizeMode: cover was changed. My team and I were not able to get the behavior of SDK 32 back in our production app without completely removing the splash screen on Android.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
You can’t perform that action at this time.