好久沒更新博客了,今天來寫一下Intent跳轉小技巧。最近我們項目上遇到的一個問題。
需求:一個類似於淘寶banner下方的十大分類。
看到這個功能起初我是直接使用RecyclerView的GridView佈局管理器直接寫的,接着獲取Intm,接下來點擊事件裏面一個swich(){}直接一氣喝成;
想必大多出小夥伴都是這麼做的,但是後來我發現這麼做有些不好的地方。
缺點:
1.當後臺按照亂序發送數據時,會導致跳轉出錯。比如:item1是天貓,item2是聚划算,按照之前的邏輯大多數人都會是當position時==0時跳轉到天貓,position==1時跳轉到聚划算。但是當後臺把item1與item2交換位置時沒有給開發說是不是就坑了咱。
2.如果要在十大功能模塊中取消1~2個時,這時候開發的小夥伴就必須要更改跳轉位置了。
在此我給出一個相對比較好的方案,就是讓後臺添加一個字段,然後將activity的跳轉的路徑放入該字段如: com.type.test.ui.activity.Main2Activity。這樣的話我們就可以使用Intent的setClassName(參數一,參數二);這裏的參數1:當前activity的上下文,參數2:activity的全路徑;
注意:當前activity必須和要跳轉的Activity在同一個包下面,否則無法跳轉。