最近搬磚深刻的體會到"這又觸及到知識點盲區(qū)了",搬磚的路上一路坎坷,總的原因還是基礎(chǔ)不夠扎實。
比如像這個界面:

image.png
一般情況下是通過LinearLayout 添加view,然后通過ID實現(xiàn)點擊事件跳轉(zhuǎn)到功能界面。
當(dāng)然還有一種寫法 通過RecyclerView 或者 listview 實現(xiàn),如果這么整的話,就存在一個問題,我要跳轉(zhuǎn)到的目標(biāo)class 如何和position 關(guān)聯(lián)上,事實上實現(xiàn)方式有很多,可以通過顯示的名字或者position在以position或者顯示名字的map中獲取class。也可以通過創(chuàng)建一個包含class 和顯示名字的對象,這種寫法的好處應(yīng)該就是設(shè)置參數(shù)的時候就一部到位了,item 獲取到點擊事件的時候直接從對象中獲取要跳轉(zhuǎn)的class,然后通過intent.setclass()跳轉(zhuǎn)界面了。
因為基礎(chǔ)不扎實,我很長時間都是通過intent.setclass() 跳轉(zhuǎn)界面了。直到我下載了一個阿里巴巴的tangram項目源碼的時候,我才驚喜的發(fā)現(xiàn)了這個調(diào)調(diào) intent.setComponent()。
我個人感覺這個是強(qiáng)迫癥的福音,我fragment的加載都是通過fragment的名字加載的,我超級討厭代碼里面又一個class 對象,難受,下面是tangram 的代碼:

image.png
其實我們intent 用的還是挺多的,還是復(fù)習(xí)一下intent吧,加油。