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

Xamarin iOS:如何隐藏通知内容扩展界面仅留标题与按钮?

如何隐藏Notification Content Extension的自定义界面,仅保留标题与操作按钮

有效代码实现

在NotificationViewController的DidReceive方法中设置内容尺寸并隐藏视图,这是系统计算通知显示尺寸的关键时机:

public override void DidReceive(UNNotification notification)
{
    base.DidReceive(notification);
    // 强制设置内容高度为0,宽度适配屏幕
    PreferredContentSize = new CoreGraphics.CGSize(UIScreen.MainScreen.Bounds.Width, 0);
    // 彻底隐藏自定义视图
    View.IsHidden = true;
}

配套配置步骤

  • 清理布局约束:删除Storyboard中自定义视图的所有自动布局约束,避免约束冲突导致尺寸设置失效。
  • 透明背景:将视图背景色设为透明(UIColor.Clear),防止残留背景色块显示。
  • 恢复模拟器尺寸设置:把Storyboard中ViewController的Simulated Size从FreeForm改回Inferred,避免预览设置干扰实际运行效果。

原方法无效的原因

ViewDidLoad仅在视图初始化时执行,此时通知内容尚未加载,系统会在DidReceive方法后重新计算通知显示尺寸,因此ViewDidLoad中设置的尺寸会被系统覆盖。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 01:57:43