Hoşgeldin. Soru sormak veya cevaplamak için hemen üye ol.

UIView animasyon

0 oy
195 kez görüntülendi
9, Haziran, 2015 ios development kategorisinde thewiper tarafından soruldu
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
9, Haziran, 2015 yasin tarafından cevaplandı

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
9, Haziran, 2015 thewiper tarafından cevaplandı

Ö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
9, Haziran, 2015 thewiper tarafından cevaplandı

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

...