1. ホーム
  2. ios

インターフェースビルダーでUIViewのボーダーカラーが効かない?

2023-11-22 03:40:03

質問

私はIBを介してビューのレイヤープロパティを設定しようとしています。ボーダーの色以外はすべて動作します(プロパティ layer.borderColor ):

1年前にこの問題にぶつかり、結局プログラムでやった記憶があります。そして今でも、プログラム的に行うことができるのですが、なぜ layer.borderColor プロパティがインターフェースビルダー経由で機能しないのか不思議です。私はインポートしたいとは思いません。 QuartzCore をインポートして、このためだけに余分なコードを書くのは、やりすぎのように思われます。

どのように解決するのか?

可能ですが、組み込みの機能ではありません。というのも Color タイプは、ユーザー定義ランタイム属性パネルで作成される UIColor が作成されますが layer.borderColorCGColorRef 型を保持します。残念なことに、このように CGColorRef を割り当てる方法はありません。

しかし、これはプロキシプロパティによって可能である。参照 Peter DeWeeseの回答 をご覧ください。彼の回答は、Interface Builderでプロキシの色を設定できるようにするカテゴリを定義しています。