我按照配置指南进行操作react-native-splash-screen
,最终遇到了以下说明:
import android.os.Bundle;
import com.facebook.react.ReactActivity;
import org.devio.rn.splashscreen.SplashScreen;
public class MainActivity extends ReactActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
SplashScreen.show(this);
super.onCreate(savedInstanceState);
}
}
我的问题是我们当前的源代码已经从react-native-navigation
的SplashActivity
扩展而来。我知道我不能从两个或多个超类扩展一个类。如何协调此需求?我主要来自Javascript编程背景。
import com.reactnativenavigation.controllers.SplashActivity;
public class MainActivity extends SplashActivity {...}
还有其他关于此的资源,但我正在寻找可以从react-native
编程经验的角度回答的人的答案,因为我很少接触 Java 或原生 Android 开发。
查看 React 的 SplashActivity 源代码,并没有太多事情发生。您不能简单地让MainActivity
扩展ReactActivity
并手动混合 React SplashActivity
的代码吗?
我知道这不是一个理想的解决方案,尤其是在 React SplashActivity
的实现可能会发生变化的情况下,但是,这似乎是目前唯一可用的选择。
您可以在ReactNative's
Github上创建一个问题,要求SplashActivity代码可插入。
react-native-navigation SplashActivity
的主要目标是提供一种显示初始屏幕的简单方法(通过实现createSplashLayout()
或getSplashLayout()
,请参阅 https://wix.github.io/react-native-navigation/#/android-specific-use-cases?id=splash-screen(。如果您不特别需要react-native-splash-screen
的功能,我建议您使用该SplashActivity
,因为我目前看不到任何使它们协同工作的方法。