У меня есть два класса A и B.
Класс A содержит UIView с именем myView, а также метод MyMethod для установки положения myView.
-(void)MyMethod:(NSString *)justCheck
{
[self.view addSubview:myView];
[self.view bringSubviewToFront:myView];
CGRect mframe = [myView frame];
NSLog(@"------------> MyMethod Called = %@",justCheck);
// EDIT: the following NSLogs are added later--------------------
NSLog(@"------------> MyMethod Called:mframe:x = %g",mframe.origin.x); //0
NSLog(@"------------> MyMethod Called:mframe:y = %g",mframe.origin.y); //42
NSLog(@"------------> MyMethod Called:mframe:H = %g",mframe.size.height); //317
NSLog(@"------------> MyMethod Called:mframe:W = %g",mframe.size.width); //320
//---------------------------------------------------------------
mframe.origin.y = 42;
[myView setFrame:mframe];
}
Когда кнопка вкласс A с именем buttonOfA вызывает этот MyMethod, он отлично работает, и я вижу myView в позиции 42. код такой, как показано ниже,
-(IBAction)buttonOfA:(id)sender
{
[self MyMethod:@"I am A"];
}
Но, когда кнопка класса B с именем buttonOfB пытается вызвать этометод, NSLog работает, но я не вижу myView в позиции 42. Код, как показано ниже,
-(IBAction)buttonOfB:(id)sender
{
[objOfA MyMethod:@"I am B"]; //objOfA is the object of class A
}
Что здесь происходит ?? Я изо всех сил пытался выяснить проблему,Но я не мог.Пожалуйста, помогите мне.
Спасибо:)
РЕДАКТИРОВАТЬ: четыре NSLogs добавлены в myMethod ()