溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

UIView如何管理它的子視圖

發(fā)布時(shí)間:2020-06-29 03:08:06 來(lái)源:網(wǎng)絡(luò) 閱讀:277 作者:ljl5125 欄目:開(kāi)發(fā)技術(shù)

UIView提供了很多建立和管理視圖的方法。

1、添加視圖

     insertSubview:atIndex:   //放在子視圖數(shù)組的具體索引位置

     insertSubview:aboveSubview:   //某個(gè)子視圖前面

     insertSubview:aboveSubview:   //某個(gè)子視圖前面

2、重新排序和刪除子視圖

      [parentView exchangeSubviewAtIndex:i withSubviewAtIndex:j]//交換兩個(gè)視圖的位置

      bringSubviewToFront:和sendSubviewToBack://將子視圖提前活置后

      [childView removeSuperview]//刪除某個(gè)視圖的子視圖

3、視圖回調(diào)

   某個(gè)視圖的層次一改變,該視圖就會(huì)收到一次回調(diào)。

   a、調(diào)用addSubivew:成功后會(huì)給該視圖發(fā)送didAddSubivew:回調(diào),觸發(fā)UIView的子類(lèi)在心增視圖時(shí)執(zhí)行其他操作。

   b、didMoveToSuperview:會(huì)通知相關(guān)視圖他們的上級(jí)視圖已經(jīng)變化。

   c、視圖移動(dòng)前會(huì)發(fā)出willMoveToSuperview:回調(diào)

   d、didMoveToWindow:回調(diào)和didMoveToSuperview:相似,從命名上能看出其區(qū)別。

   e、willMoveToWindow:在視圖移動(dòng)前發(fā)出的回調(diào)。

    f、willRemoveToSubview:回調(diào)通知父視圖子視圖即將被刪除


UIView掌管直接屏幕繪圖。他的drawRect:方法提供一種低級(jí)方式來(lái)直接繪制內(nèi)容,允許使用Quartz 2D調(diào)用創(chuàng)建和顯示任意元素,可將這兩個(gè)元素結(jié)合起來(lái)共同構(gòu)建具體、可操作的界面。

當(dāng)用戶觸摸屏幕時(shí),Touchview類(lèi)收集一系列點(diǎn),在每個(gè)觸摸移動(dòng)之處,touchesMoved:WithEvent:方法調(diào)用setNeedsDisplay。這又會(huì)觸發(fā)對(duì)drawRect:方法的調(diào)用,其中視圖將這些點(diǎn)繪制成線段來(lái)創(chuàng)建一個(gè)可視屏幕路徑。


向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI