2016-12-09 22 views
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を返された、私の内にレンダリングされるように、ネイティブアプリを反応させるのですか?

+0

JustifyContentとalignItemsの両方が「中央」の場合、幅と高さをマップビューに設定する必要があります。 – eden

+0

リリースモードになっているかどうかを確認します。 –

+0

@EnieJakro:あなたは正しいです。 'alignItems'と' justifyContent'を削除し、 'MapView'で' flex:1'を設定しました。 –

答えて

1

alignItemsjustifyContentスタイルをコンテナから削除し、MapViewflex: 1スタイルを追加して修正しました。

関連する問題