中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

React-Native組件之ListView

發布時間:2020-07-04 09:56:25 來源:網絡 閱讀:1748 作者:lb沫 欄目:開發技術
在使用dataSource時,我們需要先new一個dataSource對象
constructor(){
        super();
        this.state = {
            movies:new ListView.DataSource({
                rowHasChanged:(row1,row2) => row1 !== row2
            })
        }
        this.fetchData();   //豆瓣json   https://api.douban.com/v2/movie/top250
    };
1.getRowData(dataBlob, sectionID, rowID):表明我們將以何種方式從dataBlob(數據源)中提取出rowData,
sectionID用于指定每一個section的標題名(在renderRow,renderHeader等方法中會默認拆開并作為參數傳入)

2.getSectionHeaderData(dataBlob, sectionID):表明我們將以何種方式從dataBlob(數據源)中提
取出HeaderData。HeaderData用于給每一個sectionHeader賦值

3.rowHasChanged(prevRowData, nextRowData):指定我們更新row的策略,一般來說都是prevRowData和
nextRowData不相等時更新row

4.sectionHeaderHasChanged(prevSectionData, nextSectionData):指定我們更新sectionHeader的策略,
一般如果用到sectionData的時候才指定

fetchData(){
          data ='username='+user;
          fetch(REQUEST_URL,
            {
              method: 'POST',
              headers: {
                    'Accept':'application/json',
                    'Content-Type':'application/x-www-form-urlencoded'
                        },
              body: data
            })

          .then((response) => response.json()) //把response轉為json
          .then((responseData) => {
            this.setState({
                      movies:this.state.movies.cloneWithRows(responseData.subjects)
                  })
          })
          .catch((error)=> {
              alert(error);
          })
      };

renderMovieList(movie){
      return(
          <View>
            <View  style={styles.itemContent}>
              <Text onPress={() => this._gotoSubClass(movie.Sn) } style={styles.itemHeader}>
                {movie.title}
              </Text>
            </View>
          </View>
      );
}

//render兩種寫法 一
render() {
    return(
      <View style={styles.container}>
        <ListView
                dataSource={this.state.movies}
                renderRow={
                  this.renderMovieList.bind(this)   //上邊自定義方法
                }
         />
      </View>
    );
  }

//render兩種寫法 二
  render() {
    return(
      <View style={styles.container}>
        <ListView
                dataSource={this.state.movies}
                renderRow={(movieData) => <Text>{movieData.title}</Text>}
                />

      </View>
    );
  }

附一篇簡書很好的文

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

张家川| 大竹县| 谷城县| 元谋县| 社会| 南溪县| 巴楚县| 湄潭县| 万源市| 六安市| 隆化县| 加查县| 巴林左旗| 麟游县| 刚察县| 蚌埠市| 遂溪县| 渭源县| 手游| 清苑县| 珲春市| 新河县| 侯马市| 土默特右旗| 思茅市| 台湾省| 松潘县| 泸州市| 孟津县| 长岛县| 天津市| 太谷县| 毕节市| 呼伦贝尔市| 柘城县| 阳城县| 西华县| 保德县| 南康市| 宜昌市| 介休市|