React-Native启动页

news2024/9/22 7:22:49

本文将从 AndroidIOS 两端分别详细介绍APP是如何设置名称、图标以及启动页的。

首先我们到 图标工厂 上传一张 1024x1024 的图标,然后一键生成所有尺寸的图标,下载下来供两端使用。

IOS端

设置名称

在 Xcode 中点击你的项目修改右侧 Display Name 就是APP的名称

设置图标

将上面下载好的图标组文件夹打开,将 ios 目录下的 AppIcon.appiconset 整个拖入到项目的 ios/rn(工程名)/Images.xcassets 目录下替换原有文件。

回到 Xcode 中就可以看到所有尺寸的图标都已设置成功

重新运行项目就可以看到图标了。

如果重新运行项目图标依然不生效,请确认 Copy Bundle Resources 中是否有 Images.xcassets

设置启动页

首先安装react-native-splash-screen

yarn add react-native-splash-screen

然后进入 ios 目录执行 pod install

用Xcode打开工程,在 AppDelegate.m 文件中导入 RNSplashScreen.h文件,并添加显示代码。

#import "RNSplashScreen.h" // 导入

[RNSplashScreen show]; // 显示启动屏

然后新建一个启动图容器

image.png

同样的还是去图标工厂制作启动图

image.png

将下载好的启动图文件夹里 ios 目录下的 LaunchImage.launchimage 拖入到 ios/rn(工程名)/Images.xcassets 里替换原有文件。

image.png

然后查看 App Icons and Launch Images

image.png

我们需要将 Launch Screen File 置空,这样就不会走默认的 LaunchScreen.storyboard

所以我们需要在 Build Settings 中搜索 Asset Catalog Launch Image Set Name 然后创建启动页名字

image.png

然后在 info 中修改 Launch screen interface file base nameLaunchImage

image.png

后面的 Value 改为 LaunchImage

image.png

最后在RN中的首页中设置多长时间后关闭启动图

import React from 'react';
import {Text, StyleSheet, View, Dimensions} from 'react-native';
import SplashScreen from 'react-native-splash-screen';

export default class Home extends React.Component {
  componentDidMount() {
    setTimeout(() => {
      SplashScreen.hide();
    }, 3000);
  }
  render() {
    return (
      <View style={styles.content}>
        <Text style={{fontFamily: 'FZSJ-LIANGWZDQS'}}>
          智者一切求自己,愚者一切求他人。
        </Text>
      </View>
    );
  }
}

const styles = StyleSheet.create({
  content: {
    display: 'flex',
    flexDirection: 'column',
    justifyContent: 'center',
    alignItems: 'center',
    width: Dimensions.get('window').width,
    height: Dimensions.get('window').height,
  },
});

重启可看到效果

LaunchImage.png

Android端

设置名称

修改 android/app/src/main/res/values/strings.xml 文件

<resources>
    <string name="app_name">自动驾驶</string>
</resources>

设置图标

将上面下载好的图标组文件夹打开,将 android 目录下的6个文件夹拖入到 android/app/src/main/res 目录下替换。并将 android/app/src/main/AndroidManifest.xml 文件的 iconroundIcon 都改为图标的名称

image.png

image.png

重新编译并运行可以看到效果

设置启动页

将下载好的启动图文件夹里 android 目录下的6个文件夹拖入到 android/app/src/main/res目录里。

image.png

android/settings.gradle 文件中加入这两行代码

include ':react-native-splash-screen'   
project(':react-native-splash-screen').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-splash-screen/android')

image.png

然后在 android/app/build.gradle 文件中引入 react-native-splash-screen

implementation project(':react-native-splash-screen')

image.png

然后在 android/app/src/main/java/com.rn(项目名)/MainActivity.java 文件中引入安卓包

import android.os.Bundle;
import org.devio.rn.splashscreen.SplashScreen;

@Override
protected void onCreate(Bundle savedInstanceState) {
  SplashScreen.show(this);  // 显示
  super.onCreate(savedInstanceState);
}

image.png

android/app/src/main/java/com.rn(项目名)/MainApplication.java 文件中引入

 import org.devio.rn.splashscreen.SplashScreenReactPackage;

image.png

android/app/src/main/res 下创建 layout 文件夹,并在该文件夹下创建 launch_screen.xml 文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/screen">
</LinearLayout>

android/app/src/main/res/values 文件夹下创建 color.xml 文件

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <color name="primary_dark">#000000</color>
</resources>

android/app/src/main/res/values/styles.xml 文件中添加

<!--设置透明背景-->
<item name="android:windowIsTranslucent">true</item>

image.png

重新编译可看到效果



作者:无穷369
链接:https://www.jianshu.com/p/ce7ee8efd42c

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/456527.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

深入浅出MySQL——MySQL基础

文章目录 数据库基础数据库概念主流数据库服务器&#xff0c;数据库&#xff0c;表关系基本使用MySQL架构SQL语句分类存储引擎 库的操作创建数据库创建数据库案例字符集和校验规则操纵数据库 表的操作创建表查看表结构修改表删除表 数据类型数据类型分类数值类型字符串类型 表的…

【华为机考】专题突破 第一周:单调栈 739 、503 、901、84

刷题顺序参考于 《2023华为机考刷题指南&#xff1a;八周机考速通车》 前言 单调栈&#xff1a;分为单调递增和单调递减栈。(栈内元素成递增或者递减性)&#xff1a; 单调递增栈&#xff1a;从栈底到栈顶数据是从大到小&#xff0c;即 栈内的元素从栈顶 到栈底 是递增的&#x…

react-10 函数式写法rsc,配合HOOKS钩子函数

性能优化&#xff1a;useMemo &#xff1a;用于组件性能优化&#xff08;缓存计算属性&#xff0c;变化才执行&#xff09;是通过缓存值的方式实现性能优化 useMemo(callback, array)&#xff1a;性能优化&#xff0c;利用了闭包的特性&#xff0c;会返回一个记忆值, 通过 记…

3D线光谱共焦位移传感器在医疗领域的应用

随着社会的发展&#xff0c;越来越多的行业对微观物体表面形貌的观察提出了越来越高的要求。与生命健康息息相关的医疗行业就是其中之一。但是传统的显微镜只能达到聚焦区域的图像清晰&#xff0c;非聚焦区域图像模糊。因此&#xff0c;普通显微镜无法在相同景深下实现对物体表…

两大消息爆出,币圈正在响应全球“去美元化”行动

为了维持美元霸权、对全球进行收割&#xff0c;美联储连续加息反而拉爆了自家银行。欧美银行危机事件&#xff0c;让人们觉得把钱放在银行里并不安全&#xff0c;加密货币的去中心化本质&#xff0c;令币圈逆风翻盘。数据显示&#xff0c;比特币今年上涨了近72%&#xff0c;这可…

《编码——隐藏在计算机软硬件背后的语言》精炼——第12章(二进制加法器)

“I hear and I forget. I see and I remember. I do and I understand”——Confucius 人类计算二进制数的方法 我们先计算本位的结果&#xff0c;称为加法位&#xff1b;再计算是否进位&#xff0c;称为进位位。 搭建二进制加法器 我们用逻辑门来搭建二进制加法器。它的思想…

CHAPTER 8: 《DESIGN A URL SHORTENER》第8章 《设计一个url伸缩器》

CHAPTER 8: DESIGN A URL SHORTENER 在这一章中&#xff0c;我们将解决一个有趣而经典的系统设计面试问题:设计一个像tinyurl这样的网址缩短服务。 步骤1 -理解问题并确定设计范围 系统设计面试的问题是故意留下开放式的。精心设计系统中&#xff0c;提出澄清性问题是至关重…

HDCTF 2023 复盘

web yamiyami 当时考虑直接读的/proc/self/environ 读到flag是not_flag 就没考虑过/proc/1/environ了 然后不知道py3URL二次编码的特性,读不到源码,无从下手 做flask算pin码的题做多了,还以为pid是1的就是self,难顶 上面那种是非预期 预期是yaml反序列化 先读源码 /read?u…

产品推荐丨智慧水利行业应用终端+云平台

智慧水利是我国智慧城市建设的重要延伸&#xff0c;是新时代水利现代化的战略目标&#xff0c;贯穿于防汛抗旱减灾、水资源合理配置和高效利用、水资源和河湖健康保障等体系。随着水利技术的集成发展与场景的成熟应用&#xff0c;我国水利现已完成从自动化阶段到信息化阶段的过…

学习系统编程No.13【文件系统】

引言&#xff1a; 北京时间&#xff1a;2023/3/31/7:48&#xff0c;该篇博客在两天前本就应该产出&#xff0c;但是摆烂谁拦得住&#xff0c;所以呜呜呜&#xff01;本以为欠的钱也要快还完了&#xff0c;没想到啊&#xff0c;越欠越多&#xff0c;烦人&#xff01;但是&#…

领略未来无需远方,华为全屋智能将在AWE描绘智慧生活新图景

作者 | 曾响铃 文 | 响铃说 4月27日-30日&#xff0c;AWE 2023中国家电及消费电子博览会将在上海新国际博览中心举行&#xff0c;这是AWE展沉淀两年后的再次回归。 作为家电及消费电子领域TOP3的国际盛会&#xff0c;本届AWE以“智科技&#xff0c;创未来”为主题&#xff0…

Redis 数据存储原理

核心模块如图 1-10。 图1-10 图 1-10 Client 客户端&#xff0c;官方提供了 C 语言开发的客户端&#xff0c;可以发送命令&#xff0c;性能分析和测试等。 网络层事件驱动模型&#xff0c;基于 I/O 多路复用&#xff0c;封装了一个短小精悍的高性能 ae 库&#xff0c;全称是 …

如何写好学位论文

昨天刚提交了学位论文&#xff0c;今天准备来总结一下一些常用的Word写作技巧。 样式与多级列表 论文一般都会对章节条目的标题、参考文献、表格内容、题注的字体字号、行间距、段落间距等作出规定。为每一类文字设置一种样式&#xff0c;在写的时候直接应用样式可以方便地对全…

研报精选230421

目录 【行业230421南京证券】氢能行业&#xff1a;地缘政治加速绿色能源转型 【行业230421华安证券】AIGC行业研究框架与投资逻辑 【行业230421信达证券】工控行业深度报告&#xff1a;行业拐点将至&#xff0c;国产品牌加速崛起 【个股230421国信证券_华阳集团】聚焦汽车智能化…

ruoyi启动前端报错‘vue-cli-service‘ 不是内部或外部命令

解决方案&#xff1a; 在新项目的pack.json的文件目录&#xff0c;执行命令npm install 或者 cnpm install 如果报npm 不是内部命令&#xff0c;需要在系统配置全局的变量 在使用npm的时候&#xff0c;或者是通过npm下载了一些包&#xff0c;使用这些包的时候&#xff0c;有时…

LightGBM模型详解

1.背景 LightGBM 是微软开发的 boosting 集成模型&#xff0c;和 XGBoost 一样是对 GBDT 的优化和高效实现&#xff0c;原理有一些相似之处&#xff0c;但它很多方面比 XGBoost 有着更为优秀的表现。官方给出的这个工具库模型的优势如下&#xff1a; 更快的训练效率低内存使用…

全网最详细,web自动化测试窗口框架与验证码登录处理(超详细实战)

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 selenium的作用域…

传输协议特点大比拼之TCP

文章目录 前言一.Tpc报头格式源端口和目的端口&#xff1a;序列号&#xff1a;确认号&#xff1a;数据偏移&#xff1a;控制位&#xff1a;窗口大小&#xff1a;校验和&#xff1a;紧急指针&#xff1a; 二.TPC原理2.1 确认应答机制2.2 超时重传机制2.3 连接管理机制2.3.1 三次…

档案室温湿度相关资料

国家档案局《档案库房技术管理暂行规定》对档案库房(也适用于机关档案室)温湿度要求做了如下明确界定&#xff1a;档案库房(含胶片室、磁带室)的温度应控制在14&#xff5e;24℃&#xff0c;有设备的库房日变化幅度不超过2℃&#xff0c;相对湿度应控制在45&#xff5e;60%&…

【大数据离线开发】9 Pig:数据分析引擎

文章目录 Pig&#xff1a;数据分析引擎9.1 什么是Pig9.1.1 简介9.1.2 与 Hive 的对比 9.2 Pig的体系结构和数据模型9.3 Pig的安装和工作模式9.3.1 Pig安装9.3.2 Pig工作模式 9.4 Pig的内置函数9.5 使用PigLatin语句分析数据9.6 Pig的自定义函数9.6.1 自定义过滤和运算函数9.6.2…