如何修复MaterialComponents Pod中MDCTextField已弃用的警告?
解决MDCTextField废弃警告的方案
核心替换方向
官方已废弃MDCTextField及其关联类,需替换为TextControls系列组件,其中支持浮动标签的常用组件有两种:
MDCFilledTextField:填充式背景的浮动标签输入框MDCOutlinedTextField:描边式背景的浮动标签输入框
代码替换示例
原MDCTextField实现
let oldTextField = MDCTextField(frame: CGRect(x: 20, y: 100, width: 300, height: 50)) oldTextField.label.text = "用户名" oldTextField.placeholder = "请输入用户名" view.addSubview(oldTextField)
替换为MDCFilledTextField
let filledTextField = MDCFilledTextField(frame: CGRect(x: 20, y: 100, width: 300, height: 50)) filledTextField.label.text = "用户名" filledTextField.placeholder = "请输入用户名" view.addSubview(filledTextField)
替换为MDCOutlinedTextField
let outlinedTextField = MDCOutlinedTextField(frame: CGRect(x: 20, y: 100, width: 300, height: 50)) outlinedTextField.label.text = "用户名" outlinedTextField.placeholder = "请输入用户名" view.addSubview(outlinedTextField)
依赖与适配说明
- 更新Pod依赖:确保Podfile中包含TextControls组件,执行
pod update同步最新版本
pod 'MaterialComponents/TextControls'
- 属性适配:原
MDCTextField的多数属性在新组件中有对应实现,例如:- 浮动标签激活色:原
floatingLabelActiveColor→ 新组件activeFloatingLabelColor - 文本颜色:直接沿用
textColor属性即可
- 浮动标签激活色:原
内容的提问来源于stack exchange,提问作者Shaikh
相关产品推荐
相关产品推荐

