我使用带有圆角的int rows = 10, cols = 10;
std::vector<std::string> strs( rows, std::string( cols, ' ' ) );
for (int x = 0; x<rows; x++)
for (int y = 0; y<cols; y++)
if (x == 0 || x == 9 || y == 0 || y == 9)
strs[y][x] = '*'; // only issue you have to address row/column not column/row
std::string text = "foo";
strs[rows/2].replace( ( cols - text.length() ) / 2, text.length(), text );
for( const auto &str : strs )
std::cout << str << std::endl;
创建了一个视图。不过,我想将其移除Storyboard
。我使用用户定义的运行时属性来完成这项工作,我想知道我是否可以为iPhone
制作变体。
编辑:我知道我可以在代码中执行此操作,但这听起来很愚蠢,因为它具有视觉效果,而故事板文件听起来像是进行此类变体的正确位置。
答案 0 :(得分:0)
extension CALayer {
var borderUIColor: UIColor {
set {
if UIDevice.current.model == "iPhone" {
self.borderColor = newValue.cgColor
}
// do whatever you want
}
get {
return UIColor(cgColor: self.borderColor!)
}
}
}
然后使用layer.borderUIColor访问该属性。
编写扩展并重新定义属性,在set方法中判断设备类型会解决这个问题!希望这能解决你的问题!