Hoşgeldin. Soru sormak veya cevaplamak için hemen üye ol.
0 oy
526 kez görüntülendi
ios development kategorisinde tarafından
Merhaba,

UIView animasyon ile bir uiview objesini hareket ettiriyorum. Hareket ettirme esnasında, öncesinde ya da sonrasında uview üzerindeki bir nesnenin özelliklerinde değişiklik yaptığımda animasyon duruyor ve ilk halini alıyor. view üzerindeki hiçbir objede değişiklik yapmazsam animasyon sorunsuz çalışıyor.

Örn; view üzerinde bir label var ve text özelliğini değiştiriyorum.

Bu durumu nasıl aşabilirim.

Örnek kod bloğu:

[UIView animateWithDuration:2.0f delay:1.0f options:UIViewAnimationOptionCurveEaseInOut animations:^{
    viewObjesi.frame = CGRectMake(130, 30, 120, 120);
} completion:^(BOOL finished) {
    lblEtiket.Text = @"Deneme";
}];
}

3 Cevaplar

+1 oy
tarafından

aslında bir sorun olmaması lazım, tam olarak nasıl kullanıyorsunuz animasyonu bilemiyorum ama.
mesela aşağıda bir örnek hazırladım ve istediğiniz sorunsuz çalışıyor.

@synthesize testView;
@synthesize testLabel;

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.


    self.testView = [[UIView alloc] initWithFrame:CGRectMake(20.0, 20.0, 160.0, 80.0)];
    self.testView.backgroundColor = [UIColor redColor];
    [self.view addSubview:self.testView];


    self.testLabel = [[UILabel alloc] initWithFrame:CGRectMake(20.0, 20.0, 120.0, 40.0)];
    self.testLabel.backgroundColor = [UIColor grayColor];
    self.testLabel.textAlignment = NSTextAlignmentCenter;
    self.testLabel.text = @"hede";
    [self.testView addSubview:self.testLabel];


    [UIView animateWithDuration:2.0f delay:1.0f options:UIViewAnimationOptionCurveEaseInOut animations:^{
        self.testView.frame = CGRectMake(20.0, 200.0, 160.0, 80.0);
    } completion:^(BOOL finished) {
        self.testLabel.text = @"hödö";
    }];
}
0 oy
tarafından

Öncelikle cevap için teşekkür ederim.

Sanırım tek fark @synthesize yapmıyor ve objeyi kod tarafında oluşturmuyorum.
UIView ve Label objesini .h tarafında tanımyıp .m tarafında direk erişiyorum.

0 oy
tarafından

Evet, şimdi test ettim
UI lie view objesini oluşturursam çalışmıyor.
ama kod lie view objesi create edilirse sorun yok.

...