Реактивная альтернатива Alertios.prompt для Android?Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Реактивная альтернатива Alertios.prompt для Android?

Сообщение Anonymous »

Я следую учебному пособию для React-National, однако они делают это для iOS, есть одна часть, в которой они используют Alertios.prompt, как это < /p>

Код: Выделить всё

AlertIOS.prompt(
'Add New Item',
null,
[
{text: 'Cancel', onPress: () => console.log('Cancel Pressed'), style: 'cancel'},
{
text: 'Add',
onPress: (text) => {
this.itemsRef.push({ title: text })
}
},
],
'plain-text'
);
Я пытаюсь переделать это для Android, но не могу заставить его работать, я обнаружил, что это https://www.npmjs.com/package/react-nat ... ode]import Prompt from 'react-native-prompt';
title="Say something"
placeholder="Start typing"
defaultValue="Hello"
visible={ this.state.promptVisible }
onCancel={ () => this.setState({
promptVisible: false,
message: "You cancelled"
}) }
onSubmit={ (value) => this.setState({
promptVisible: false,
message: `You said "${value}"`
}) }/>
< /code>
Однако я также не могу заставить это работать, он должен отображать подсказку, когда я нажимаю кнопку, но ничего не происходит .. < /p>
Вот полный исходный код с Alertios < /p>
'use strict';

import React, {Component} from 'react';
import ReactNative from 'react-native';
const firebase = require('firebase');
const StatusBar = require('./components/StatusBar');
const ActionButton = require('./components/ActionButton');
const ListItem = require('./components/ListItem');
const styles = require('./styles.js')

const {
AppRegistry,
ListView,
StyleSheet,
Text,
View,
TouchableHighlight,
AlertIOS,
} = ReactNative;

// Initialize Firebase
const firebaseConfig = {
apiKey: "AIzaSyA9y6Kv10CAl-QOnSkMehOyCUejwvKZ91E",
authDomain: "dontforget.firebaseapp.com",
databaseURL: "https://dontforget-bd066.firebaseio.com",
storageBucket: "dontforget-bd066.appspot.com",
};
const firebaseApp = firebase.initializeApp(firebaseConfig);

class dontforget extends Component {

constructor(props) {
super(props);
this.state = {
dataSource: new ListView.DataSource({
rowHasChanged: (row1, row2) => row1 !== row2,
})
};
this.itemsRef = this.getRef().child('items');
}

getRef() {
return firebaseApp.database().ref();
}

listenForItems(itemsRef) {
itemsRef.on('value', (snap) => {

// get children as an array
var items = [];
snap.forEach((child) => {
items.push({
title: child.val().title,
_key: child.key
});
});

this.setState({
dataSource: this.state.dataSource.cloneWithRows(items)
});

});
}

componentDidMount() {
this.listenForItems(this.itemsRef);
}

render() {
return (








)

}

_addItem() {
AlertIOS.prompt(
'Add New Item',
null,
[
{text: 'Cancel', onPress: () => console.log('Cancel Pressed'), style: 'cancel'},
{
text: 'Add',
onPress: (text) => {
this.itemsRef.push({ title: text })
}
},
],
'plain-text'
);
}

_renderItem(item) {

const onPress = () => {
AlertIOS.alert(
'Complete',
null,
[
{text: 'Complete', onPress: (text) => this.itemsRef.child(item._key).remove()},
{text: 'Cancel', onPress: (text) => console.log('Cancelled')}
]
);
};

return (

);
}

}

AppRegistry.registerComponent('dontforget', () => dontforget);
[/code]
Может ли кто -нибудь сказать мне, как я мог бы сделать это для Android?


Подробнее здесь: https://stackoverflow.com/questions/400 ... or-android
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»