You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Swift实现点击按钮切换UITextView的文本颜色

UITextView 常规/隐身模式文本颜色切换实现方案

首先需要新增状态变量记录当前模式,再适配切换逻辑和编辑代理逻辑即可,完整实现如下:

  1. 定义模式标记变量
    在当前视图控制器中新增变量记录模式状态:
var isIncognitoMode = false // 默认false为常规模式
  1. 实现模式切换按钮点击逻辑
    点击按钮时切换模式,同时同步修改UITextView的文本颜色:
@IBAction func incognitoBtnTapped(_ sender: UIButton) {
    isIncognitoMode.toggle()
    textView.textColor = isIncognitoMode ? .white : .black
}
  1. 适配原有编辑开始代理方法
    修改你现有代码的判断逻辑,根据当前模式设置输入文本的颜色:
func textViewDidBeginEditing(_ textView: UITextView) {
    // 判断当前为placeholder状态时清空占位文本,设置输入文字颜色
    if textView.textColor == .lightGray || textView.textColor == (isIncognitoMode ? .white : .black) {
        textView.text = nil
        textView.textColor = isIncognitoMode ? .white : .black
    }
}

效果示意:
标准模式下应为黑色
其他模式下应为白色

内容的提问来源于stack exchange,提问作者dextermikles

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 01:36:01