此问题仅涉及react-native 0.29
及以后:
我正在使用的模块需要我将主要活动传递给它的构造函数。
直到反应原生29我曾经如此传递它:
@Override
protected List<ReactPackage> getPackages() {
return Arrays.<ReactPackage>asList(
new MainReactPackage(),
new OrientationPackage(this), //<-------
);
}
但是现在这部分代码必须在MainApplication
内移动,我不再知道如何从代码的那一部分访问MainActivity ..
这就是我的MainApplication.java
文件现在的样子:
public class PlaceAVoteApplication extends Application implements ReactApplication{
private static CallbackManager mCallbackManager = new CallbackManager.Factory().create();
private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) {
@Override
protected boolean getUseDeveloperSupport() {
return BuildConfig.DEBUG;
}
/**
* A list of packages used by the app. If the app uses additional views
* or modules besides the default ones, add more packages here.
*/
@Override
protected List<ReactPackage> getPackages() {
return Arrays.<ReactPackage>asList(
new MainReactPackage(),
new OrientationPackage(this), //<-- Error here because this is not the MainActivity
);
}
};
@Override
public ReactNativeHost getReactNativeHost() {
return mReactNativeHost;
}
}
有什么建议吗?
答案 0 :(得分:0)
这对我有用
@Override
protected List<ReactPackage> getPackages() {
return Arrays.<ReactPackage>asList(
new MainReactPackage()
,new OrientationPackage(this)
);
}
};