создать кнопку пользовательские панели, используяIOS - сделать UIImage взять тот же размер, как UIButton
+ (UIBarButtonItem *)barBtnItem:(id)target action:(SEL)action imageName:(NSString *)imageName frame:(CGRect)frame
{
UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];
[btn setImage:[UIImage imageNamed:imageName] forState:UIControlStateNormal];
[btn addTarget:target action:action forControlEvents:UIControlEventTouchUpInside];
[btn setFrame:frame];
UIBarButtonItem *barBtn = [[UIBarButtonItem alloc] initWithCustomView:btn];
return barBtn;
}
рама имеет размер
CGRectMake(0, 0, 22, 22)
Однако, я думаю, что в связи с соотношением сторон, мое изображение становится меньше, но правильно центрируется в UIButton
Однако я хочу, чтобы изображение было того же размера, что и UIButton.
Могу ли я это сделать?
Я использовал XCode 7 и попробовал его функцию резки. Но я не мог заставить его работать.
Если бы я мог сделать это с помощью кода?
Я также посмотрел на UIEdgeinsets, но я не совсем понимаю понятия cap/insets.
Оба ответа были верны. Однако значения для вложений должны быть отрицательными для расширения изображения. 0 не работает, поскольку ничего не делает. Если я установил значение вставки -5, я получил желаемое поведение. – GJain
если вы не возражаете, установите его как фоновое изображение, вы можете попробовать это https://github.com/AlexHsieh/ButtonAppearance – AlexHsieh