3

这个问题仅指react-native 0.29及以后:

我正在使用一个模块,它要求我将主要活动传递给它的构造函数。

直到 react-native 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;
    }
}

请问有什么建议吗?

4

1 回答 1

0

这对我有用

@Override
    protected List<ReactPackage> getPackages() {
        return Arrays.<ReactPackage>asList(
                new MainReactPackage()
                ,new OrientationPackage(this)
        );
    }
};
于 2016-08-22T14:33:38.707 回答