Tôi có thể sử dụng IB_DESIGNABLE và/hoặc IBInspectable để đặt layer.borderWidth và layer.borderColor trong Interface Builder không? Tôi hiện đang tạo nút của tôi trong mã nhưng tôi muốn để có thể thiết lập tất cả điều này trong IB nhưng tôi không chắc chắn nếu các thuộc tính này có thể được thiết lập theo cách đó trong Xcode 6. Tôi muốn làm cho điều này một IBOutlet thay vì có tất cả các thiết lập này trong mã. Đây là mã nút của tôi bây giờ.Đặt chiều rộng và màu đường viền lớp UIButton trong Bộ dựng giao diện
directions = [UIButton buttonWithType:UIButtonTypeRoundedRect];
directions.titleLabel.textAlignment = NSTextAlignmentCenter;
directions.titleLabel.font = [UIFont fontWithName:@"FranklinGothicStd-ExtraCond" size:20.0];
[directions setTitle:@"Directions" forState:UIControlStateNormal];
[directions setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
directions.frame = CGRectMake(20, 178, 70, 70);
directions.layer.borderWidth = 2.0f;
directions.layer.borderColor = [UIColor whiteColor].CGColor;
directions.clipsToBounds = YES;
directions.backgroundColor = [UIColor clearColor];
[directions addTarget:self action:@selector(getDirections:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:directions];
tôi thiết lập các giá trị như đề nghị và biên giới không bao giờ được thể hiện trong các mô phỏng. EDIT: Tôi đã tìm ra lý do tại sao đường viền không hiển thị khi thiết lập các giá trị này trong IB. Màu biên giới là một CGColor vì vậy tôi đã phải đặt nó trong mã.
Cảm ơn. Điều đó sẽ giúp nhưng tôi muốn biết về việc sử dụng IBInspectable và IB_DESIGNABLE để các hiệu ứng có thể được nhìn thấy trong IB. – raginggoat
Tôi đã thử và đường viền không xuất hiện. – raginggoat
Bạn cũng phải thiết lập borderColor để xem đường biên – Istvan