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

TvOS下使用Xamarin无法将禁用的UITextField背景设为透明

TvOS Xamarin UITextField透明背景不生效解决方案

在TvOS平台用Xamarin开发时,UITextField设置BackgroundColor = UIColor.Clear却无法显示透明背景,核心原因是TvOS的UITextField默认自带边框样式(UITextBorderStyle.RoundedRect),这个样式会自带一个半透明的背景层,直接覆盖你设置的透明背景。按以下步骤修改即可解决:

  • 给UITextField添加BorderStyle = UITextBorderStyle.None,关闭默认的边框背景样式
  • 确保没有设置Background属性(该属性优先级高于BackgroundColor,若设置会覆盖透明背景)

修改后的完整代码:

var label = new UITextField()
{
    Text = seperator,
    UserInteractionEnabled = false,
    BackgroundColor = UIColor.Clear,
    VerticalAlignment = UIControlContentVerticalAlignment.Top,
    BorderStyle = UITextBorderStyle.None // 关键修改
};

parent.AddArrangedSubview(label);

label.TranslatesAutoresizingMaskIntoConstraints = false;
label.HeightAnchor.ConstraintEqualTo(200).Active = true;
label.TextAlignment = UITextAlignment.Center;

如果修改后仍有异常,可以检查父视图UIStackView的背景设置,但根据你描述的「设置其他颜色正常」,问题基本出在UITextField的默认边框样式上。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 14:05:34