After struggling with React Native vector icons (from react-native-vector-icons
) not showing in my iOS app, I finally solved it. Here's a detailed step-by-step that might help others facing the same issue.
Problem
Icons were rendering perfectly on Android, but nothing appeared on iOS. No errors, just missing icons.
My Setup
React Native 0.79.1
react-native-vector-icons
iOS target using Xcode
Bare React Native (not Expo)
Root Cause
On iOS, react-native-vector-icons uses custom font files (like Ionicons.ttf, FontAwesome.ttf, etc.). These font files need to be:
Without step 2 or 3, icons won’t render even if you import them correctly in JS.
Solution
Inside ios/YourApp/Info.plist, add the font files like this:
<key>UIAppFonts</key>
<array>
<string>AntDesign.ttf</string>
<string>Entypo.ttf</string>
<string>EvilIcons.ttf</string>
<string>Feather.ttf</string>
<string>FontAwesome.ttf</string>
<string>FontAwesome5_Brands.ttf</string>
<string>FontAwesome5_Regular.ttf</string>
<string>FontAwesome5_Solid.ttf</string>
<string>Foundation.ttf</string>
<string>Ionicons.ttf</string>
<string>MaterialCommunityIcons.ttf</string>
<string>MaterialIcons.ttf</string>
<string>Octicons.ttf</string>
<string>SimpleLineIcons.ttf</string>
<string>Zocial.ttf</string>
</array>
node_modules/react-native-vector-icons/Fonts
Select all the .ttf files mentioned in your Info.plist.
In the dialog box:
Check Copy items if needed
Check your target (e.g., YourProject)
Click Add
In Xcode, click the blue project icon > select your app target.
Go to the Build Phases tab.
Expand Copy Bundle Resources.
Ensure all .ttf files are listed.
from Xcode:
Product > Clean Build Folder
Then Run (⌘ + R)
If you're still facing issues after this, feel free to comment.