修改弹窗遮挡

This commit is contained in:
筱野
2025-10-14 23:13:50 +08:00
parent f95353750a
commit d2e051f93a
6 changed files with 60 additions and 31 deletions

View File

@@ -36,6 +36,7 @@ const SelectStadium: React.FC<SelectStadiumProps> = ({
const stadiumDetailRef = useRef<StadiumDetailRef>(null)
const [stadiumList, setStadiumList] = useState<Stadium[]>([])
const [loading, setLoading] = useState(false)
// const [keyboardVisible, setKeyboardVisible] = useState(false);
const initData = async () => {
setLoading(true)
try {
@@ -162,6 +163,9 @@ const SelectStadium: React.FC<SelectStadiumProps> = ({
`<span class="highlight-text">${searchValue}</span>`
)
}
// const handleAnyInput = (value) => {
// setKeyboardVisible(value)
// }
@@ -178,11 +182,13 @@ const SelectStadium: React.FC<SelectStadiumProps> = ({
onCancel={handleDetailCancel}
onConfirm={handleConfirm}
position="bottom"
//style={{ paddingBottom: keyboardVisible ? `20px` : undefined }}
round
>
<StadiumDetail
ref={stadiumDetailRef}
stadium={selectedStadium}
//onAnyInput={handleAnyInput}
/>
</CommonPopup>
)
@@ -248,7 +254,11 @@ const SelectStadium: React.FC<SelectStadiumProps> = ({
<Loading type="circular" className='loading-icon'></Loading>
</View>
) : (
<ScrollView className='stadium-list' scrollY>
<ScrollView className='stadium-list'
scrollWithAnimation
enhanced
showScrollbar={false}
scrollY>
{filteredStadiums.map((stadium) => (
<View
key={stadium.id}
@@ -260,26 +270,26 @@ const SelectStadium: React.FC<SelectStadiumProps> = ({
</View>
<View className='stadium-item-right'>
<View className='stadium-name' dangerouslySetInnerHTML={{ __html: markSearchText(stadium.name) }}></View>
<View className='stadium-address'>
<Text
className='stadium-distance'
onClick={(e) => {
e.stopPropagation()
handleItemLocation(stadium)
}}
>
{calculateDistance(stadium)} ·
</Text>
<Text
className='stadium-address-text'
onClick={(e) => {
e.stopPropagation()
handleItemLocation(stadium)
}}
>
{stadium.address}
</Text>
<Image src={images.ICON_ARRORW_SMALL} className='stadium-map-icon' />
<View className='stadium-address'>
<Text
className='stadium-distance'
onClick={(e) => {
e.stopPropagation()
handleItemLocation(stadium)
}}
>
{calculateDistance(stadium)} ·
</Text>
<Text
className='stadium-address-text'
onClick={(e) => {
e.stopPropagation()
handleItemLocation(stadium)
}}
>
{stadium.address}
</Text>
<Image src={images.ICON_ARRORW_SMALL} className='stadium-map-icon' />
</View>
</View>