UIButton для отображения BackgroundImage, изображения и заголовка
Я хочу создать UIButton
который использует его setBackgroundImage
, setImage
, а также setTitle
свойства, но когда я добавляю setTitle
в комбинации с setImage
а также setBackgroundImage
заголовок не появляется.
Я попробовал следующее.
[button setBackgroundImage:[UIImage imageNamed:@"image3.jpg"] forState:UIControlStateNormal];
[button setImage:[UIImage imageNamed:@"month_pct_general.png"] forState:UIControlStateNormal];
[button setTitle:[NSString stringWithFormat:@"%d",[button tag]] forState:UIControlStateNormal];
[button setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
[button.titleLabel setFont:[UIFont boldSystemFontOfSize:20.0f]];
[button setTitleEdgeInsets:UIEdgeInsetsMake(45, 0, 0, 25)];
2 ответа
Решение
Ваш заголовок на кнопке и на заголовке все изображение там, так что добавьте ярлык на изображение, как это.
UIButton *myButton = [[UIButton buttonWithType:UIButtonTypeCustom] retain];
[myButton setFrame:CGRectMake(0,3,70,32)];
[myButton setImage:[UIImage imageNamed:@"image.png"] forState:UIControlStateNormal];
[myButton addTarget:self action:@selector(compete) forControlEvents:UIControlEventTouchUpInside];
UILabel *Label=[[UILabel alloc]initWithFrame:CGRectMake(6, 5, 60, 20)];
[Label setText:@"label"];
Label.backgroundColor=[UIColor clearColor];
[Label setFont:[UIFont fontWithName:@"Helvetica-Bold" size:12]];
Label.textColor=[UIColor whiteColor];
[myButton addSubview:Label];
все ваше изображение только над заголовком, поэтому ваш заголовок находится в фоновом режиме, поэтому используйте метку при просмотре изображения.
Если вы создаете GUI с использованием конструктора интерфейса, нажмите на метку и перейдите в Editor-> Arrange -> Send to Front.