改变UIAlertController的标题、内容的字体和颜色

iOS 修改alertViewController弹框的字体颜色及字体的方法 系统默认的字体是黑色,按钮颜色是蓝色或者红色的,我们怎样自定义字体呢 Codeing Show UIAlertController *alertVC = [UIAlertController alertControllerWithTitle:@提示 message:@确认退出登录? preferredStyle:(UIAlertControllerStyleAlert)]; UIAlertAction *cancelAction = [UIAlertAction actionWithTitle:@取消 style:UIAlertActionStyleCancel handler 立即下载

在开发中,弹出框是必不可少的,通常情况下,我们只要弹出系统自带的弹出框就可以。but,在某些情况下,万恶的UI会要求你修改显示文字的大小、颜色,虽然系统自带有一种红色字体的UIAlertAction,但是这种Action并不能放在Cancel位置,所以,更多时候,需要我们自己修改文字字体和颜色。 我采用的方法是KVC: 正常情况下,我们配置出来的UIAlertController是这样的:

这里写图片描述

代码如下:

UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"提示" message:@"提示内容" preferredStyle:UIAlertControllerStyleAlert];
//    UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"提示" message:@"提示内容" preferredStyle:UIAlertControllerStyleActionSheet];

    UIAlertAction *defaultAction = [UIAlertAction actionWithTitle:@"Default" style:UIAlertActionStyleDefault handler:nil];
    UIAlertAction *destructiveAction = [UIAlertAction actionWithTitle:@"Destructive" style:UIAlertActionStyleDestructive handler:nil];
    UIAlertAction *cancelAction = [UIAlertAction actionWithTitle:@"Cancel" style:UIAlertActionStyleCancel handler:nil];

    [alertController addAction:defaultAction];
    [alertController addAction:destructiveAction];
    [alertController addAction:cancelAction];

    [self presentViewController:alertController animated:YES completion:nil];

代码里展示了系统提供的三种UIAlertAction,现在我们要对文字的字体和颜色进行设置:

  • 1.标题和提示内容的文字设置
    代码如下:
  //修改title
  NSMutableAttributedString *alertControllerStr = [[NSMutableAttributedString alloc] initWithString:@"提示"];
  [alertControllerStr addAttribute:NSForegroundColorAttributeName value:[UIColor redColor] range:NSMakeRange(0, 2)];
  [alertControllerStr addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:17] range:NSMakeRange(0, 2)];
  if (alertController valueForKey:@"attributedTitle") {
      [alertController setValue:alertControllerStr forKey:@"attributedTitle"];
  }
  //修改message
  NSMutableAttributedString *alertControllerMessageStr = [[NSMutableAttributedString alloc] initWithString:@"提示内容"];
  [alertControllerMessageStr addAttribute:NSForegroundColorAttributeName value:[UIColor greenColor] range:NSMakeRange(0, 4)];
  [alertControllerMessageStr addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:20] range:NSMakeRange(0, 4)];
  if (alertController valueForKey:@"attributedMessage") {
      [alertController setValue:alertControllerMessageStr forKey:@"attributedMessage"];
  }

效果如下:

这里写图片描述


  • 2.设置按钮文字,就拿取消按钮距离:
    代码如下:
  //修改按钮
  if (cancelAction valueForKey:@"titleTextColor") {
      [cancelAction setValue:[UIColor redColor] forKey:@"titleTextColor"];
  }

效果如下:

这里写图片描述

至于里面的key值怎么得到的,过两天会写一篇文章来讲述。

自托管AI邮件助手imap-mcp:安全连接Claude与个人邮箱的完整指南 在AI助手日益普及的今天,如何安全地让AI访问个人邮箱数据成为关键挑战。传统方法如直接暴露IMAP/SMTP凭证存在严重安全隐患,而第三方SaaS服务则涉及隐私泄露风险。Model Context Protocol (MCP) 作为一种新兴的标准化协议,为AI工具安全接入提供了解决方案。其核心价值在于实现数据源与AI助手间的安全、标准化交互,特别适用于处理敏感信息的场景。imap-mcp正是基于MCP协议构建的自托管邮件网关,它通过多层安全机制(包括主密钥加密和OAuth令牌哈希化)保护用户凭证,让用户能在 阅读详情

相关推荐

腾讯云运维工程师认证TCA--真题(最新2022.11)

解析:云原生应用的12要素,1.基准代码:一份基准代码,多份部署;解析:腾讯云主账号具备对其名下资源(包括存储桶)的最大权限,您虽然可以在存储桶策略中限制几乎所有操作,但主账号始终具备 PUT Bucket Policy 操作的权限,主账号调用该操作不检查存储桶策略。解析:瀑布模型将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落。解答:云原生五大关键技术:微服务、容器化、DevOps、持续交付。

e1210101的博客 9915

UIAlertController 简单修改title以及按钮的字体颜色

https://www.jianshu.com/p/cecd1b4bbf27 欢迎加入 iOS开发QQ群:151133690 实现此效果的另一种简单调用方式已经上传到gitHub,请移步https://github.com/benben-hello/BBAlertController 先来几张效果图吧: 苦逼的开发者,最终败给了一个任性的UI...

weixin_30567225的博客 225

避坑!瑞萨RZ/N2L用J-Link下载调试的那些‘坑’(从驱动版本到硬件架构选择)

本文详细解析了瑞萨RZ/N2L开发中使用J-Link调试时常见的兼容性问题与解决方案,包括驱动版本选择、SWD连接优化及e2 studio调试技巧。特别针对硬件架构与驱动版本的匹配问题提供了实用对照表,帮助开发者高效避开调试陷阱,提升开发效率。

weixin_30576827的博客 441

[iOS]UIAlertController修改提示按钮文字颜色

系统提示按钮字体颜色默认是蓝色,因为是在项目优化时产生的需求故使用拓展的方式解决。 #import "UIAlertController+GSActionBtn.h" @implementation UIAlertController (GSActionBtn) + (void)load { // 只执行一次 static dispatch_once_t onceToke...

Gamin 3475

金智维KRPA实战:Excel自动化数据处理全流程解析

本文详细解析了金智维KRPA在Excel自动化数据处理中的全流程应用,涵盖COM接口和文件读写两种核心技术方案,以及销售报表生成、数据清洗和可视化仪表盘等实战案例。通过企业级应用的异常处理、性能优化和安全合规实践,显著提升数据处理效率和准确性,助力企业降本增效。

weixin_30329623的博客 598

化工设备应力分析软件:STAAD.Pro二次开发_(24).非线性分析技术

在STAAD.Pro 中,可以通过命令。

kkchenjj的博客 661

iOS 改变UIAlertController的标题、内容的字体和颜色

在开发中,弹出框是必不可少的,通常情况下,我们只要弹出系统自带的弹出框就可以。but,在某些情况下,万恶的UI会要求你修改显示文字的大小、颜色,虽然系统自带有一种红色字体的UIAlertAction,但是这种Action并不能放在Cancel位置,所以,更多时候,需要我们自己修改文字字体和颜色。我采用的方法是KVC:1.标题和提示内容的文字设置代码如下://修改title NSMutabl...

H.A.N的博客 2436

【速通RAG实战:索引】4.RAG文档解析技术

通过本文技术方案,可构建高精准、高效率的文档解析流水线,为 RAG 应用提供坚实的知识底座。核心在于**格式解析的鲁棒性**和**语义分块的准确性**,后续通过持续的性能优化和质量监控,逐步提升索引质量和检索效率。

2025博客之星Top81。专注AI工程化与架构实战。从分布式思维到模型部署,用工程化视角为你厘清AI落地的真实路径。 1545

[iOS]改变UIAlertController的标题、内容的字体和颜色

https://www.jianshu.com/p/51949eec2e9c UIAlertController和UIAlertView https://www.jianshu.com/p/ddece8cf8ebe iOS 修改UIAlertAction的字体大小 https://www.jianshu.com/p/873fd35b18d4 https://www.ji...

weixin_30851409的博客 553

Android系统去掉长按webview界面弹框中的分享功能

Android 系统去解决长按显示内容,去掉分享功能,不论那个界面,是所有界面都需要满足。如果仅仅去掉系统自带的,那么系统来处理如果客户自定义,部分App自定义的菜单项,不是调用系统的,那么还是需要应用去解决的。之前做过Editext,其实还需要去TextView,最难点的就是WebView中的HTML了 去分享功能了。WebView中涉及到分享功能菜单的界面,/***//***//***//***//***//***//***//***//**

十年饮冰,难凉热血 1019

学Simulink——基于Simulink的超前-滞后校正控制器设计与仿真建模示例

本文完成了基于 Simulink 的超前-滞后校正控制器设计与仿真,实现了:✅掌握超前与滞后校正的物理意义与设计流程✅分步设计复合控制器,兼顾动态与稳态✅在 Simulink 中搭建闭环系统并验证卓越性能✅达成高稳定裕度、高精度、快速响应三大目标。

xiaoheshang_123的博客 78

iOS UIAlertController 背景色以及字体设置

//创建UIAlertController let alertVC = UIAlertController(title: "修改家庭名称", message: nil, preferredStyle: .alert) //修改UIAlertController背景色 let subview = (alertVC.view.subviews.first?.subviews.first?.subviews.first!)! as UIView subview.backgroundC...

仰望心空1123 2994

Autosar诊断实战系列23-NRC优先级解析

NRC分类,优先级判断逻辑及测试注意事项介绍。

initiallizer的博客 2617

Swift - 自定义UIAlertController的样式1(修改标题、按钮的字体和颜色)

自 iOS8 起,苹果把 UIActionSheet 和 UIAlertView 合并为了 UIAlertController。UIAlertController 的用法我之前也写过相关文章:Swift - 告警提示框(UIAlertController)的用法。其默认样式如下: 有网友问这个 UIAlertController 默认的样式能不能修改。虽然 UIAlert

mo_xiao_mo的博客 9457

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

iOS UIAlertController上修改标题(title) 消息(message) 按钮 的字体大小及颜色

iOS UIAlertController上修改标题(title) 消息(message) 按钮 的字体大小及颜色

四分之一工程师的博客 1万+

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

UIAlertController的使用以及对字体颜色大小的修改

UIAlertController的使用以及对字体颜色大小的修改

blueCat_1128的博客 4223

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

IOS 修改UIAlertController的按钮标题的字体颜色,字号,内容

现在只是实现了功能,原理是通过runtime获取对应的可以修改的key。具体还后续的学习中进行补充主要的代码://按钮点击- (IBAction)buttonClick:(UIButton *)sender { UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"提示" messa

CJXBShowZhouyujuan的博客 1万+

iOS改变UIAlertView、UIActionSheet、UIAlertController系统字体颜色

废话不多说,直接上代码,效果是最好的说服力 1、改变UIAlertView字体颜色 [UIView appearance].tintColor =[UIColor greenColor]; 由于在iOS 8推出UIAlertController取代UIAlertView,关于UIAlertController修改颜色请见下面 3 个人还是比较喜欢使用UIAlertVi...

dengguigu1986的博客 270

修改UIAlertController字体颜色大小

UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"标题" message:@"内容" preferredStyle:UIAlertControllerStyleAlert];     alertController.view.tintColor = [UIColor b

今天明天 4993

UIAlertController设置自定义的标题和内容

我们知道,UIAlertController的标题和内容都是黑色的,但是在很多场景下都需要修改他们的颜色,比如在输入错误时把提示信息变为红色,或者自定义标题的颜色,可是在公开的API接口中好像并没有对应的方法,那么我们应该怎么做呢?第三方控件第一种方法当然就是使用第三方的Alert控件了,现在Github上有着众多的Alert控件(如SCLAlertVi...

iOS开发者-Ziank的总结 1625
上一篇: 16进制颜色转换成UIColor
下一篇: 手把手教你快速拿到iOS应用中所有图片资源
Levilly
博客等级 码龄10年 6粉丝 20原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值