Добавление пользовательского UIButton в подпредставление - PullRequest
0 голосов
/ 20 марта 2012

У меня есть подпредставление, которое оно инициировало касанием кнопки UI на главном экране. Как только подпредставление появляется, оно отображает ярлык с информацией, которую я предоставил. Это все работает. Мне просто нужно, чтобы UIbutton появился, чтобы я мог затем настроить его, чтобы закрыть подпредставление и вернуться к основному виду. Я искал по всему и не нашел ничего, что могло бы помочь.

Вот как выглядит мой код в моем файле .m:

////Button that Displays Subview with Its Label and Button
- (IBAction)showInfo:(id)sender
/////UI Subview

{UIView *mySubview = [[UIView alloc] initWithFrame:CGRectMake(0, 0,320, 480)];

[self.view addSubview:mySubview];
mySubview.backgroundColor = [UIColor blackColor];
mySubview.alpha = .7f;

//////Label in SubView

{UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(10, 10, 300, 50)];
label.text = @"Here is info";
label.textColor = [UIColor whiteColor];
label.backgroundColor= [UIColor clearColor];

[self.view addSubview:label];


////Button in Subview

//create the button
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
[button setImage:[UIImage imageNamed:@"button-info-x.png"]     forState:UIControlStateNormal];

//set the position of the button
button.frame = CGRectMake(120, 252, 68, 68);


//add the button to the view
[self.view addSubview:button];

Теперь мне просто нужно добавить действие в UIButton, чтобы закрыть Subview?

Ответы [ 3 ]

4 голосов
/ 20 марта 2012

Сначала возьмите IBOutlet из subView и добавьте его в главное представление.

 IBOutlet UIView *subView;

Затем добавьте UIButton в SubView следующим образом:

UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];

//set the position of the button
button.frame = CGRectMake(0, 0, 100, 30);

//set the button's title
[button setTitle:@"Click Me!" forState:UIControlStateNormal];

[btnMenu addTarget:self action:@selector(your MethodName:) forControlEvents:UIControlEventTouchUpInside];

//add the button to the view
[subView addSubview:button];

Затем,

-(IBAction)your MethodName:(id)sender {


}

Вышеописанным методом Удалить SubView из основного вида.

0 голосов
/ 21 октября 2014

Добавить цель к пользовательской кнопке

{

.....

    [button addTarget:self action:@selector(your dismiss:) forControlEvents:UIControlEventTouchUpInside];

.......

}
-(IBAction)your dismiss:(id)sender 
{

   // write the dismissal code here

}
0 голосов
/ 20 марта 2012

Если вы просто хотите установить изображение для кнопки UIB вместо заголовка, вам нужен метод - (void)setImage:(UIImage *)image forState:(UIControlState)state.

Вам следует проверить ссылку UIButton для получения дополнительной информации.

...