CALayer- bounds、position、anchorPoint

CALayer

每個(gè)UIView都有一個(gè)根CALayer,UIView本身沒(méi)有顯示的功能,是靠CALayer進(jìn)行繪制的效果,然而CALayer不能響應(yīng)事件。

好多動(dòng)畫效果都是通過(guò)CALayer來(lái)實(shí)現(xiàn)的,非根CALayer修改其屬性都包含著隱式動(dòng)畫,例如修改背景顏色。根CALAyer把這個(gè)效果給去掉了。

CALayer * layer = [CALayer layer];
layer.backgroundColor = [UIColor redColor].CGColor;
[self.view.layer addSublayer:layer];

layer.bounds = CGRectMake(0, 0, 100, 100); //控制大小
layer.position = CGPointMake(100, 100); //控制x,y,設(shè)置在父視圖中的位置,以父視圖左上角為原點(diǎn)(0,0)
layer.anchorPoint = CGPointMake(0, 0); //定點(diǎn),錨點(diǎn),決定CALayer身上的哪個(gè)點(diǎn)會(huì)在position屬性所指的位置,以自己的左上角為原點(diǎn)(0,0),取值在[0,1]

下面這個(gè)動(dòng)畫效果即可通過(guò)CALayer來(lái)實(shí)現(xiàn)。


 _moreView.layer.anchorPoint = CGPointMake(0.9, 0);
 _moreView.layer.bounds = CGRectMake(0, 0, 155, 212);
 _moreView.layer.position = CGPointMake(mScreenWidth - 30, 44 + 10);

       
   
if (self.moreView.hidden) { //顯示
    self.moreView.hidden = NO;
    self.moreView.transform = CGAffineTransformMakeScale(0.0001, 0.001);
    [UIView animateWithDuration:0.3 animations:^{
        self.moreView.transform = CGAffineTransformMakeScale(1.0, 1.0);
    }];
} else { //隱藏
    
    [UIView animateWithDuration:0.3 animations:^{
        
        self.moreView.transform = CGAffineTransformMakeScale(0.0001, 0.001);
        
    } completion:^(BOOL finished) {
        if (finished) {
            self.moreView.hidden = YES;
        }
        
    }];
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 在iOS中隨處都可以看到絢麗的動(dòng)畫效果,實(shí)現(xiàn)這些動(dòng)畫的過(guò)程并不復(fù)雜,今天將帶大家一窺ios動(dòng)畫全貌。在這里你可以看...
    每天刷兩次牙閱讀 8,694評(píng)論 6 30
  • 在iOS中隨處都可以看到絢麗的動(dòng)畫效果,實(shí)現(xiàn)這些動(dòng)畫的過(guò)程并不復(fù)雜,今天將帶大家一窺iOS動(dòng)畫全貌。在這里你可以看...
    F麥子閱讀 5,270評(píng)論 5 13
  • 概覽 在iOS中隨處都可以看到絢麗的動(dòng)畫效果,實(shí)現(xiàn)這些動(dòng)畫的過(guò)程并不復(fù)雜,今天將帶大家一窺iOS動(dòng)畫全貌。在這里你...
    被吹落的風(fēng)閱讀 1,707評(píng)論 1 2
  • 概覽 在iOS中隨處都可以看到絢麗的動(dòng)畫效果,實(shí)現(xiàn)這些動(dòng)畫的過(guò)程并不復(fù)雜,今天將帶大家一窺iOS動(dòng)畫全貌。在這里你...
    Yiart閱讀 3,967評(píng)論 3 34
  • 我有幾個(gè)感情特別好的小姐妹,幾個(gè)人從中學(xué)到現(xiàn)在,十幾年親如姐妹。彼此結(jié)識(shí)時(shí)都還是十三四歲的小女孩,如今一個(gè)個(gè)結(jié)婚生...
    古林今怪閱讀 237評(píng)論 0 0

友情鏈接更多精彩內(nèi)容