2017-08-24 85 views
0

虛擬鍵盤顯示時如何獲得實際屏幕高度?當鍵盤處於活動狀態且處於活動狀態時,我需要動態重新調整視圖高度。React-Native鍵盤顯示時的實際屏幕尺寸

<View style={styles.container}> 
    <TextInput 
     autoFocus={true}> 
    /> 
    <View style={styles.content}></View> 
<View> 

當鍵盤存在,駁回我怎麼能計算出活動的屏幕高度,

內容:{身高:}

+0

請在這裏查看我的答案:https://stackoverflow.com/a/44881130/6592263 –

+0

您是否嘗試過使用組件而不是手動設置內容的高度? https://facebook.github.io/react-native/docs/keyboardavoidingview.html? –

+0

我也試過KeyboardAvoidingView,它的效果並不高,它仍然隱藏了一部分視圖。我沒有任何風格,那麼也是。謝謝 – subhajit

回答

0

KeyboardAvoidingView

是解決那些需要遷出的虛擬鍵盤的方式享有共同問題的組件。它可以根據鍵盤的位置自動調整其位置或底部填充。

來源: https://facebook.github.io/react-native/docs/keyboardavoidingview.html#relativekeyboardheight

+0

但在最小化高度後,當鍵盤被解散時,先前的高度不會被重新獲得 – subhajit

+0

@subhajit當我有'behavior ='height''時,我有同樣的問題,但它可以正常工作'behavior ='padding'' – Mikeyg36

1

使用此KeyboardAwareScrollView,而不是KeyboardAvoidingView

鍵盤避免了觀點並與最後一個元素不大的工作,並設置填充/保證金沒有工作。所以你必須添加一個新元素來將所有東西都提升幾個像素。

嘗試用KeyboardAwareScrollView這使得滾動互動相當無縫,並給出了很多其他的好處就像resetScrollToCoords和被其端部管理高度計算。

+0

@subhajit你有沒有設法讓它工作? – Balasubramanian