0
新しいプロジェクトを作成し、ネイティブiOS UIコンポーネント(https://facebook.github.io/react-native/docs/native-components-ios.html)のチュートリアルに従いました。しかし、コンパイルしてコードを実行すると、空白の画面に過ぎません。私はどんな誤りも見ない。ReactネイティブiOSコンポーネントが空白
私のネイティブview
メソッドが呼び出されていることは知っていますが、MKMapViewがレンダリングされない理由はわかりません。
index.ios.js
:
/**
* Sample React Native App
* https://github.com/facebook/react-native
* @flow
*/
import React, { Component } from 'react';
import {
AppRegistry,
StyleSheet,
Text,
View
} from 'react-native';
const MapView = require('./MapView.ios');
export default class NativeTest extends Component {
render() {
return (
<View style={styles.container}>
<MapView />
</View>
);
}
}
const styles = StyleSheet.create({
container: {
flex: 1,
justifyContent: 'center',
alignItems: 'center',
// backgroundColor: 'blue',
},
});
AppRegistry.registerComponent('NativeTest',() => NativeTest);
MapView.ios.js
:
// @flow
import { requireNativeComponent } from 'react-native';
module.exports = requireNativeComponent('RCTMapView');
RCTMapViewManager.m
:
// RCTMapViewManager.m
#import <MapKit/MapKit.h>
#import "RCTViewManager.h"
@interface RCTMapViewManager : RCTViewManager
@end
@implementation RCTMapViewManager
RCT_EXPORT_MODULE()
- (UIView *)view
{
return [[MKMapView alloc] init];
}
@end
にはどうすればUIView
を返された、私の内にレンダリングされるように、ネイティブアプリを反応させるのですか?
JustifyContentとalignItemsの両方が「中央」の場合、幅と高さをマップビューに設定する必要があります。 – eden
リリースモードになっているかどうかを確認します。 –
@EnieJakro:あなたは正しいです。 'alignItems'と' justifyContent'を削除し、 'MapView'で' flex:1'を設定しました。 –