美文网首页UI很常
iOS14 UIPickerView 选中行取消背景

iOS14 UIPickerView 选中行取消背景

作者: 听雨轩_dmg | 来源:发表于2021-03-30 09:30 被阅读0次

    iOS14之后UIPikerView选中行居然有背景颜色了如图,这种情况我们是不需要的!


    image.png

    解决方案: 我们只需一句代码搞定

    if #available(iOS 14.0, *) {
       pickerView.subviews[1].backgroundColor = .clear
    }
    

    ⚠️⚠️⚠️警告,这句代码要放在确定数据源之后(numberOfRowsInComponent),否则会因为数据源越界而导致程勋奔溃⚠️⚠️
    我这里放在了

    func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
            if #available(iOS 14.0, *) {
                pickerView.subviews[1].backgroundColor = .clear
            }
            if row == dataArray.count - 1 {
                return dataArray[row] + DDExchangeLanguage("My_UserInfo_age_title_above")
            } else {
                return dataArray[row] + DDExchangeLanguage("My_UserInfo_age_title")
            }
        }
    

    你也可以放在其他地方比如下方,但需注意一定是数据添加之后!


    image.png

    如果有误,欢迎大家指正,大家加油

    相关文章

      网友评论

        本文标题:iOS14 UIPickerView 选中行取消背景

        本文链接:https://www.haomeiwen.com/subject/liewhltx.html