【问题标题】:How to change UITableView border color in Xcode如何在 Xcode 中更改 UITableView 边框颜色
【发布时间】:2014-11-08 14:46:46
【问题描述】:

任何人都知道如何更改故事板中的 UITableView 边框颜色。我正在使用 Xcode。

【问题讨论】:

标签: ios macos ipad storyboard


【解决方案1】:

在用户定义的运行时属性中试试这个设置键路径和值

【讨论】:

    【解决方案2】:

    您可能可以使用用户定义的运行时属性通过XIB或Storyboard设置borderColor或borderWidth。您需要选择您的视图,然后单击身份检查器。您将看到“用户定义的运行时属性”,您可以在其中为 tableView 设置边框颜色。

    【讨论】:

      【解决方案3】:
      任何视图(或 UIView 子类)上的

      borderColor 也可以使用带有一点编码的情节提要进行设置,如果您在多个 UI 对象上设置边框颜色,这种方法可能非常方便。

      以下是如何实现它的步骤,

      1. 在 CALayer 类上创建一个类别。用一个合适的名字声明一个 UIColor 类型的属性,我将它命名为 borderUIColor
      2. 为此属性编写 setter 和 getter。
      3. 在“Setter”方法中,只需将图层的“borderColor”属性设置为新的颜色 CGColor 值。
      4. 在“Getter”方法中返回 UIColor 和图层的边框颜色。

      P.S:请记住,类别不能存储属性。 'borderUIColor' 用作计算属性,只是作为实现我们关注的目标的参考。

      请看下面的代码示例;

      目标 C:

      接口文件:

      #import <QuartzCore/QuartzCore.h>
      #import <UIKit/UIKit.h>
      
      @interface CALayer (BorderProperties)
      
      // This assigns a CGColor to borderColor.
      @property (nonatomic, assign) UIColor* borderUIColor;
      
      @end
      

      实施文件:

      #import "CALayer+BorderProperties.h"
      
      @implementation CALayer (BorderProperties)
      
      - (void)setBorderUIColor:(UIColor *)color {
          self.borderColor = color.CGColor;
      }
      
      - (UIColor *)borderUIColor {
          return [UIColor colorWithCGColor:self.borderColor];
      }
      
      @end
      

      Swift 2.0:

      extension CALayer {
      var borderUIColor: UIColor {
          set {
              self.borderColor = newValue.CGColor
          }
      
          get {
              return UIColor(CGColor: self.borderColor!)
          }
      }
      }
      

      最后转到您的故事板/XIB,按照其余步骤操作;

      1. 单击要为其设置边框颜色的视图对象。
      2. 点击“实用工具”(屏幕右侧)面板中的“身份检查器”(左起第三个)。
      3. 在“用户定义的运行时属性”下,单击“+”按钮添加关键路径。
      4. 将键路径的类型设置为“颜色”。
      5. 将关键路径的值输入为“layer.borderUIColor”。 [记住这应该是您在类别中声明的变量名,而不是borderColor,这里是borderUIColor]。
      6. 最后选择了你想要的颜色。

      编辑:您必须将 layer.borderWidth 属性值设置为至少 1 才能看到边框颜色。

      构建并运行。 快乐编码。 :)

      【讨论】:

        【解决方案4】:

        试试下面的代码

        #import  "QuartzCore/QuartzCore.h"
        
        tableview.layer.borderWidth = 1.0;
        tableview.layer.borderColor = [UIColor lightGrayColor].CGColor;
        

        【讨论】:

        • 没有使用 xcode 属性窗口直接在情节提要文件中分配边框颜色的镜头剪切方式?
        • 放到viewDidLod()中
        猜你喜欢
        • 1970-01-01
        • 2015-02-06
        • 1970-01-01
        • 2020-01-12
        • 2013-02-18
        • 1970-01-01
        • 1970-01-01
        • 2018-04-18
        • 2010-09-09
        相关资源
        最近更新 更多