2017-03-15 14 views
7

पर काम करने के लिए डबल क्लिक करना है, मैं मूल बेस लाइब्रेरी के साथ प्रतिक्रिया मूल का उपयोग कर रहा हूं। कीबोर्ड खोलने पर मुझे मूल बेस 'ListItem (TouchableOpacity के समतुल्य) पर आग लगाने के लिए एक ऑनप्रेस ईवेंट की आवश्यकता है।प्रतिक्रिया मूल को

अब मुझे कीबोर्ड बंद करने के लिए एक बार क्लिक करना होगा और फिर मैं ListItem दबा सकता हूं।

नीचे सामग्री ScrollableView के बराबर है:

<Content keyboardShouldPersistTaps='always' keyboardDismissMode='on-drag'> 
    <List> 
    <ListItem style={styles.inspectionsItemDivider} itemDivider> 
     <TextInput 
     autoFocus={true} 
     ref={(input) => { this.titleSearch = input }} 
     placeholder='Start typing...' 
     multiline={true} 
     onChangeText={this.setSearchText.bind(this)} 
     value={this.getSearchValue()}/> 
    </ListItem> 
    <View style={styles.searchContainer}> 
     <Text style={styles.recentText}>Recommended Descriptions</Text> 
     <List dataArray={this.state.searchedDescriptions} 
     renderRow={(description) => 
     <ListItem button onPress={() => this.setInformationDescription(description)}> 
      <Text>{description}</Text> 
     </ListItem> 
     </List> 
    </View> 
    </List> 
</Content> 

उत्तर

16

मुझे वास्तव में यह पता चला।

<Content keyboardShouldPersistTaps='always' keyboardDismissMode='on-drag'> 
    <List> 
    <ListItem style={styles.inspectionsItemDivider} itemDivider> 
     <TextInput 
     autoFocus={true} 
     ref={(input) => { this.titleSearch = input }} 
     placeholder='Start typing...' 
     multiline={true} 
     onChangeText={this.setSearchText.bind(this)} 
     value={this.getSearchValue()}/> 
    </ListItem> 
    <View style={styles.searchContainer}> 
     <Text style={styles.recentText}>Recommended Descriptions</Text> 
     <List keyboardShouldPersistTaps='always' dataArray={this.state.searchedDescriptions} 
     renderRow={(description) => 
     <ListItem button onPress={() => this.setInformationDescription(description)}> 
      <Text>{description}</Text> 
     </ListItem> 
     </List> 
    </View> 
    </List> 
</Content> 
-1

मैं अब एक सप्ताह के लिए इस एक ही बात पर अटक गया है।

मेरे पास एक सर्चबॉक्स है जहां मैं एक सामग्री टैग में ListItems के माध्यम से फ़िल्टर कर रहा हूं। कीबोर्ड के बिना भी, मुझे ऑनप्रेस कार्रवाई को आग लगाने के लिए दो बार क्लिक करना होगा।

<Header searchBar rounded style={{ paddingTop: 0, height: 45 }}> 
      <Item> 
       <Icon name="search" /> 
       <Input 
        placeholder="Search" 
        ref={input => this.searchbox = input} 
        value={term} 
        onChangeText={term => this.setState({term})} /> 
       <Icon active name="close-circle" onPress={() => { 
        this.setState({ term: '' }); 
        this.searchbox._root.focus(); 
       }} /> 
      </Item> 
     </Header> 
     <Content> 
      <List dataArray={ 
      products.filter(product => 
       product.description 
       .toLowerCase() 
       .indexOf(this.state.term.toLowerCase()) >= 0 
      ) 
      } renderRow={product => 
      <ListItem onPress={() => Actions.productdetail({ product })}> 
       <Body> 
       <Text>{product.description}</Text> 
       <Text note>{product.size}</Text> 
       </Body> 
       <Right> 
       <Text note>{product.item_number}</Text> 
       </Right> 
      </ListItem> 
      } /> 
     </Content> 
+0

कोशिश keyboardShouldPersistTaps = जोड़कर अपनी सामग्री और सूची टैग करने के लिए 'हमेशा' सहारा: मैं = 'हमेशा' मेरी सूची के लिए सहारा, सामग्री टैग के अलावा keyboardShouldPersistTaps गयी। –

+0

यह प्रश्न का उत्तर नहीं है। –

संबंधित मुद्दे