W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
這是 React Native Android 的首次發(fā)行,因此在 iOS 平臺(tái)上出現(xiàn)的視圖不一定都會(huì)發(fā)布在 Android 上面。我們對(duì)社區(qū)里面的對(duì)下一系列模塊和視圖的開源代碼的反饋非常感興趣。并不是所有的視圖在 iOS 和 Android 上面都有 100% 完全相同的表現(xiàn),因此在這里就有必要使用一個(gè)對(duì)應(yīng)的例子:在 Android 上面使用 ProgressBar,而在 iOS 上面則會(huì)使用 ActivityIndicator 來替代。
我們對(duì)共同的視圖和模塊的臨時(shí)計(jì)劃包括:
視圖
View Pager Swipe Refresh Spinner ART Maps Webview
模塊
Geo Location Net Info Camera Roll App State Dialog Intent Media Pasteboard Alert
現(xiàn)在在 Android 上面發(fā)布自定義的原生模塊并不是一件輕松的事。貢獻(xiàn)者平滑穩(wěn)定的工作流很重要并且這將在第一次開源版本發(fā)布之后被密切關(guān)注。當(dāng)然,我們的目標(biāo)是形成流水線并且盡量?jī)?yōu)化在 iOS 和 Android 平臺(tái)之間的流程。
在 iOS 和 Android 之間使用透明度為 0 來處理視圖有一個(gè)明顯的差異。雖然在 iOS 上面允許這些視圖被點(diǎn)擊并且在這些視圖下面的視圖也將會(huì)接收到觸摸輸入,但是在 Android 上面這個(gè)觸摸輸入則會(huì)被阻塞。這一點(diǎn)可以用下面的一個(gè)只能在 iOS 上面點(diǎn)擊的例子來演示。
<View style={{flex: 1}}> <TouchableOpacity onPress={() => alert('hi!')}> <Text>HELLO!</Text> </TouchableOpacity> <View style={{ position: 'absolute', top: 0, left: 0, bottom: 0, right: 0, opacity: 0}} /> </View>
在 React Native 的安卓版本一個(gè)優(yōu)化的特征就是對(duì)于只能貢獻(xiàn)布局的視圖不能有原生視圖,只有它們的布局屬性能夠傳遞到它們的子視圖。這個(gè)優(yōu)化是為了給更深層次的 React Native 視圖層提供支持,因此默認(rèn)是開啟的。如果你需要一個(gè)視圖被呈現(xiàn),或者間歇性的測(cè)試檢測(cè)一個(gè)視圖是不是只是布局,關(guān)閉這個(gè)行為就很有必要了。為了做到這一點(diǎn),你只需要設(shè)置 collapsable
為 false 即可:
<View collapsable={false}> ... </View>
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: