title: React-Native Listview, press row and change that row style
body: <p>I had horizontal listview, and I want to press row and change row style. ( selected row : change style row  ,unselected row : change to default style). I use touchable highlight on row of it. any suggestion for it ?. I try to search about 3 days already. but I still cannot catch it. thank advance.</p>
  
  <pre><code>class MatchSchedule extends Component {
  
  constructor(props) {
      super(props);
      const ds = new ListView.DataSource({
          rowHasChanged: (r1, r2) =&gt; r1 !== r2,
      });
      this.state = {
          dataSource: ds.cloneWithRows(this._getWeekList()),
          selectedID: 'Week 3',
      };
       render() {
         return (
          &lt;View style={styles.container}&gt;
              &lt;View style={styles.weekContain}&gt;
                  &lt;ListView
                      showsHorizontalScrollIndicator={false}
                      horizontal={true}
                      dataSource={this.state.dataSource}
                      renderRow={this._renderRow.bind(this)}
                  &gt;
                  &lt;/ListView&gt;
              &lt;/View&gt;
          &lt;/View&gt;
        );}
      _renderRow(rowData, rowID) {
      return (
          &lt;TouchableHighlight onPress={() =&gt; {
              this._selectedWeek(rowData, rowID)
          }
          }
          &gt;
              &lt;View style={this.state.selectedID == rowData ? styles.weekRowSelected : styles.weekRow}&gt;
                  &lt;Text style={this.state.selectedID == rowData ? styles.weekTextSelected : styles.weekText}&gt; {rowData} &lt;/Text&gt;
              &lt;/View&gt;
          &lt;/TouchableHighlight&gt;
      );
  }
   _selectedWeek(rowData, rowID) {
      this.setState({
          selectedID: rowData,
          dataSource: this.state.dataSource.cloneWithRows(newDs)
      });
  }   
  }
  </code></pre>
  
  <p>I am try to re-render listview also, but still cannot. I am new react-native.</p>