У меня есть кнопка с изображением с камеры. Когда я нажимаю кнопку захвата, он перенаправляется на другой контроллер представления. После того, как я сделаю снимок, вид появится на предыдущем контроллере. При появлении представления я также отправляю уведомление о первом контроллере представления с принятым изображением. Когда изображение принимается, я попытался изменить режим просмотра setFrame
. Но кадр не получил обновления. То, что я попытался было,Как изменить frame rect при получении уведомления от NSNotificationCenter?
- (void) onReceiveImage:(NSNotification *) notification{
if ([[notification name] isEqualToString:@"ImageCapturedNotification"]) {
[self.postTxtView resignFirstResponder];
NSDictionary* userInfo = notification.userInfo;
UIImage *image = (UIImage*)userInfo[@"image"];
[self.postLandImageView setImage:image];
// in here i want to change the view frame
}
}
Чтобы изменить кадр я сделал,
self.bottomView.frame = CGRectMake([UIScreen mainScreen].bounds.size.width-self.bottomView.frame.size.width, self.view.bounds.size.height-self.bottomView.frame.size.height, self.bottomView.frame.size.width, self.bottomView.frame.size.height);
Это не работает. Пожалуйста, помогите мне сделать это. Благодарю.
Используете ли вы раскадровку/nib & ограничения? – Paulw11
есть. Автоматические макеты и классы размеров – codebot
Затем вам нужно управлять ограничениями, а не фреймом. Вы можете создать ссылку IBOutlet на верхнее ограничение вида, а затем изменить его свойство 'constant'. Вы можете даже оживить это изменение. – Paulw11