How To: Make Your React Native App Work With The iPhone X Screen

Engineering Insights

#
Min Read
Published On
March 13, 2025
Updated On
April 25, 2025
How To: Make Your React Native App Work With The iPhone X Screen

On my latest project, I started building the React Native app before the iPhone X was released. After it was released I opened it up in the iPhone X simulator and realized that the top and bottom was cut off to adhere to the aspect ratio of all of the other late model iPhones, 16:9. The iPhone X has an aspect ratio of 19.5:9.

I figured that this was something that I was going to have to deal with at some point, but put it on the back burner to take care of later. As the project came to a close, Apple emailed iOS developers that it would no longer approve app
that didn't comply with the iPhone X's screen size.

As I searched for the correct way to resolve it I came across lots of examples of using the SafeAreaView component to make sure that my views weren't overlapping with the iOS top and bottom bar elements (e.g. battery indicator, clock, etc...)

However, this wasn't my problem. I needed to just "stretch" the app out vertically so that I could take advantage of the extra screen real estate.

The simple fix ended up being that I needed to add an appropriately sized splash screen for the iPhone X.

When I started the project I chose to use the Launch Screen image pattern rather than creating a LaunchScreen.xib. This meant that I needed to provide launch screens for each of the different sized devices that could open the app.

To add a screen size for the iPhone X I opened up ios/ExampleApp/Images.xcassets/LaunchImage.launchimage/Contents.json and added this snippet to the top of the JSON:

{  "extent": "full-screen",  "idiom": "iphone",  "subtype": "2436h",  "minimum-system-version": "11.0",  "orientation": "portrait",  "scale": "3x"},Then, I had a new spot at the top of my Image.xcassets/LaunchImage view that I
could drag and drop an appropriately sized splash screen for the iPhone X onto.

Blank iPhone X entry

Filled In iPhone X entry

Finally, once I did that and rebuilt the app, the React Native app was displayed using
the full screen of the iPhone X! All in all, it was a fairly easy fix.

Learn more about how The Gnar builds React Native apps.

Author headshot
Written by
, The Gnar Company

Related Insights

See All Articles
Engineering Insights
Anthropic Dropped OpenClaw Support. Here's How I Replaced It With Claude Code.

Anthropic Dropped OpenClaw Support. Here's How I Replaced It With Claude Code.

Anthropic's TOS change killed OpenClaw overnight, taking businesses built on the ecosystem with it. But for end users, Claude Code's new channels feature offers a viable path forward.
Product Insights
We Turned a Phone Call Into a Working Product in 48 Hours. Here's Exactly How.

We Turned a Phone Call Into a Working Product in 48 Hours. Here's Exactly How.

Watch what happens when a one-hour phone call becomes a working application in 48 hours. We walk through exactly how Context-Driven Development turns a single conversation into a competitor analysis, feature prioritization, full PRD, and production-grade software with Stripe billing, user accounts, and an admin dashboard—using AI-assisted agentic development with a human architect in the loop.
News
Is Your Team Ready for AI? Here's How to Find Out in 2 Minutes

Is Your Team Ready for AI? Here's How to Find Out in 2 Minutes

Most teams aren't getting real value from AI tools — not because the tools don't work, but because their foundations aren't ready. Discover the five factors that predict AI success and take a free 2-minute assessment to find out where your team stands.
Previous
Next
See All Articles