React native 如何更改ListView中每隔一行的背景色?
是否有办法更改ListView中每第二行的背景色 我认为使用if语句应该是可行的,该语句可以识别它是偶数行还是奇数行,并基于此选择样式。然而,似乎不可能在React Native中使用此功能 我的renderRow函数如下所示:React native 如何更改ListView中每隔一行的背景色?,react-native,React Native,是否有办法更改ListView中每第二行的背景色 我认为使用if语句应该是可行的,该语句可以识别它是偶数行还是奇数行,并基于此选择样式。然而,似乎不可能在React Native中使用此功能 我的renderRow函数如下所示: renderRow={(rowData) => { return ( <TouchableHighlight onPress={() => this.props.onSelectNote(rowD
renderRow={(rowData) => {
return (
<TouchableHighlight
onPress={() => this.props.onSelectNote(rowData)}
style={styles.rowStyle}
underlayColor="#9E7CE3"
>
<Text style={styles.rowText}>{rowData.title}</Text>
</TouchableHighlight> )
}
}
renderRow={(rowData)=>{
返回(
this.props.onSelectNote(rowData)}
style={style.rowStyle}
underlayColor=“#9E7CE3”
>
{rowData.title}
)
}
}
到目前为止,所有行都将根据rowStyle设置样式。如何才能对不同的行使用不同的样式?您可以将ID传递给
rowData
,以了解要渲染的行是偶数行还是奇数行,然后对所有偶数行/奇数行使用自定义样式
比如:
renderRow={(rowData, sectionID, rowID, highlightRow) => {
let evenRow = rowData.id % 2 == 0;
return (
<TouchableHighlight
onPress={() => this.props.onSelectNote(rowData)}
style={[styles.rowStyle, evenRow && styles.evenRowStyle}
underlayColor="#9E7CE3"
>
<Text style={styles.rowText}>{rowData.title}</Text>
</TouchableHighlight>
);
}
}
renderRow={(rowData,sectionID,rowID,highlightRow)=>{
设evenRow=rowData.id%2==0;
返回(
this.props.onSelectNote(rowData)}
style={[style.rowStyle,evenRow&&style.evenRowStyle}
underlayColor=“#9E7CE3”
>
{rowData.title}
);
}
}
您可以将ID传递给行数据
,以了解要渲染的行是偶数行还是奇数行,然后对所有偶数行/奇数行使用自定义样式
比如:
renderRow={(rowData, sectionID, rowID, highlightRow) => {
let evenRow = rowData.id % 2 == 0;
return (
<TouchableHighlight
onPress={() => this.props.onSelectNote(rowData)}
style={[styles.rowStyle, evenRow && styles.evenRowStyle}
underlayColor="#9E7CE3"
>
<Text style={styles.rowText}>{rowData.title}</Text>
</TouchableHighlight>
);
}
}
renderRow={(rowData,sectionID,rowID,highlightRow)=>{
设evenRow=rowData.id%2==0;
返回(
this.props.onSelectNote(rowData)}
style={[style.rowStyle,evenRow&&style.evenRowStyle}
underlayColor=“#9E7CE3”
>
{rowData.title}
);
}
}
谢谢您的回复。但是它不起作用。我将rowID记录到控制台,显然这些是1454594588447和1454594592183等数字。没有一个是偶数!这些是如何生成的?好的,我必须承认我没有测试过这一点,所以这是罪过……有没有办法让您将rowData中的索引传递给同谋h同样的事情?我做了一个计数器,它的工作原理类似于索引,现在你的解决方案工作了,非常感谢!奇怪。每当我使用rowID时,我都会得到正常的递增ID(1,2,3..)。谢谢你的回复。但是它不起作用。我将rowID记录到控制台,显然这些是1454594588447和1454594592183等数字。没有一个是偶数!这些数字是如何生成的?好的,我必须承认我没有测试这一点,所以这是罪过……有没有一种方法可以让你在rowData
中传递索引来完成测试同样的事情?我做了一个像索引一样工作的计数器,现在你的解决方案工作了,非常感谢!奇怪。每当我使用rowID时,我都会得到正常的递增ID(1,2,3..)。