iOS,viewWithTag搜尋機制

2021-07-03 18:30:20 字數 986 閱讀 4545

好久沒寫東西了。廢話不多說。

ios中獲取乙個想要的view的引用有很多方法,其中有一種是利用 viewwithtag:(nsinteger),填寫tag即可獲取tag。

看到方法時,我們很自然的想到,這個tag是類似uuid的東西,不同的view寫入不同的tag,之後通過tag獲得對應的view。

但是tag是我們自己手動新增的,如果有兩個view的tag相同,我們通過viewwithtag獲取的view到底是哪乙個view呢?

要獲得答案,我也沒太想翻文件,覺得試驗一下就好。

(由於在這發圖,審核太麻煩,我就不發了(還是懶))

新建專案,開啟ib,拖入幾個view,層級結構是這樣的:

view(self.view)

--view1

----view11

----view12

--view2

----view21

每個view都設定不同的背景顏色(沒有設定過黑色),設定不同的tag(我的tag都是200開頭,然後後面加數字)之後通過**:

uiview *viewtext = [self.view viewwithtag:2001];

viewtext.backgroundcolor = [uicolor blackcolor];

檢視哪乙個view變黑了。

1.view1為2001,view2為2001,查詢2001,找到view1.

2.view1為2001,view11為2001,查詢2001,找到view1.

3.view11為2001,view2為2001,查詢2001,找到view11

4.view11為2001,view21為2001,查詢2001,找到view11

我感覺查詢的方式很簡單,就是通過檢視的層級結構查詢,從最先新增的開始找,找到後就return了。簡單說就是上面我畫的層級結構,從上到下有5個view,查詢方式就是從上到下找,找到就返回。

純粹個人臆斷,沒有官方支援,如果有不對的地方,歡迎指正。

騰訊搜搜刪除不了

guid是 1ff7973d ab0a 496d 82c1 4eadbba11e7b 討厭的是它還設定了登錄檔的許可權!所以不好刪除 刪除方法 win7 x64 chs sp1,ie8 1 新增刪除程式中刪除,重啟 2 刪除 c program files tencent中相關的東東,有乙個程序ar...

廣搜和深搜

一般來說,廣搜常用於找單一的最短路線,或者是規模小的路徑搜尋,它的特點是 搜到就是最優解 而深搜用於找多個解或者是 步數 已知 好比3步就必需達到前提 的標題,它的空間效率高,然則找到的不必定是最優解,必需記實並完成全數搜尋,故一般情況下,深搜需要很是高效的剪枝 優化 像搜尋最短路徑這些的很顯著若是...

搜尋(深搜 廣搜)

我記得在遙遠的2017年,我會敲的搜尋也只有暴力列舉了。那個時候的我深搜剛會一丟丟,所以也只配切切水題,然而經常死迴圈re那是肯定的。如今的我因為在多次比賽中都死於搜尋,那就必須得認真磕一下了。其實是這樣的 我眼裡認為的暴力就真的只是暴力,暴力無非就兩種 列舉打表和模擬。然而在這麼多次比賽後,我總能...