mirror of
https://github.com/zhigang1992/react-native.git
synced 2026-04-26 13:25:51 +08:00
MapView to support MKPointAnnotation using new attribute annotate in Map...
Summary:
### MapView to support Pin annotation
var pinLocation = {
latitude: property.latitude,
longitude: property.longitude,
title: property.title
};
this.state = {propertyPoint: pinLocation};
<MapView style={styles.map} region={this.state.region} annotate={this.state.propertyPoint}>
</MapView>

Closes https://github.com/facebook/react-native/pull/810
Github Author: guru inamdar <guru.inamdar@gmail.com>
Test Plan: Imported from GitHub, without a `Test Plan:` line.
This commit is contained in:
@@ -95,6 +95,23 @@ var MapView = React.createClass({
|
||||
longitudeDelta: React.PropTypes.number.isRequired,
|
||||
}),
|
||||
|
||||
/**
|
||||
* Map annotations with title/subtitle.
|
||||
*/
|
||||
annotations: React.PropTypes.arrayOf(React.PropTypes.shape({
|
||||
/**
|
||||
* The location of the annotation.
|
||||
*/
|
||||
latitude: React.PropTypes.number.isRequired,
|
||||
longitude: React.PropTypes.number.isRequired,
|
||||
|
||||
/**
|
||||
* Annotation title/subtile.
|
||||
*/
|
||||
title: React.PropTypes.string,
|
||||
subtitle: React.PropTypes.string,
|
||||
})),
|
||||
|
||||
/**
|
||||
* Maximum size of area that can be displayed.
|
||||
*/
|
||||
@@ -142,6 +159,7 @@ var MapView = React.createClass({
|
||||
pitchEnabled={this.props.pitchEnabled}
|
||||
scrollEnabled={this.props.scrollEnabled}
|
||||
region={this.props.region}
|
||||
annotations={this.props.annotations}
|
||||
maxDelta={this.props.maxDelta}
|
||||
minDelta={this.props.minDelta}
|
||||
legalLabelInsets={this.props.legalLabelInsets}
|
||||
@@ -165,6 +183,7 @@ var RCTMap = createReactIOSNativeComponentClass({
|
||||
pitchEnabled: true,
|
||||
scrollEnabled: true,
|
||||
region: {diff: deepDiffer},
|
||||
annotations: {diff: deepDiffer},
|
||||
maxDelta: true,
|
||||
minDelta: true,
|
||||
legalLabelInsets: {diff: insetsDiffer},
|
||||
|
||||
@@ -58,6 +58,8 @@ var RCTTextFieldAttributes = merge(RCTTextViewAttributes, {
|
||||
caretHidden: true,
|
||||
enabled: true,
|
||||
clearButtonMode: true,
|
||||
clearTextOnFocus: true,
|
||||
selectTextOnFocus: true,
|
||||
});
|
||||
|
||||
var onlyMultiline = {
|
||||
@@ -267,7 +269,17 @@ var TextInput = React.createClass({
|
||||
'unless-editing',
|
||||
'always',
|
||||
]),
|
||||
|
||||
/**
|
||||
* If true, clears the text field automatically when editing begins
|
||||
*/
|
||||
clearTextOnFocus: PropTypes.bool,
|
||||
/**
|
||||
* If true, selected the text automatically when editing begins
|
||||
*/
|
||||
selectTextOnFocus: PropTypes.bool,
|
||||
/**
|
||||
* Styles
|
||||
*/
|
||||
style: Text.propTypes.style,
|
||||
/**
|
||||
* Used to locate this view in end-to-end tests.
|
||||
@@ -431,6 +443,8 @@ var TextInput = React.createClass({
|
||||
autoCapitalize={autoCapitalize}
|
||||
autoCorrect={this.props.autoCorrect}
|
||||
clearButtonMode={clearButtonMode}
|
||||
clearTextOnFocus={this.props.clearTextOnFocus}
|
||||
selectTextOnFocus={this.props.selectTextOnFocus}
|
||||
/>;
|
||||
} else {
|
||||
for (var propKey in notMultiline) {
|
||||
|
||||
Reference in New Issue
Block a user