日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

java - android代碼重構:如何把app設置里的頭像UI做成通用的?

瀏覽:316日期:2024-02-09 11:23:59

問題描述

公司幾款app設置界面都有用戶頭像,功能一樣:網絡請求獲取頭像更新,點擊頭像彈出:拍照or相冊,選擇照片更新頭像。

現在都是寫在各自項目中,大量重復代碼,現在需要重構,老大說把這個View寫成通用控件(不是整個界面),但是點擊View進入拍照或者相冊,選擇返回照片是在Activity的onActivityResult里處理,我在View里面無法重寫這個方法啊 怎么弄???

問題解答

回答1:

這個問題當然是怎么方便怎么來, 但是要考慮App目前的框架:

按樓上說的用回調.但注意因為回調放在了被靜態變量引用, 一般回調是匿名內部類, 可能會導致內存泄漏.

用事件總線. 也是實現中間層, 把結果通過事件總線傳過來.

推薦: 既然是重構, 可以考慮讓所有的控件都擁有獲取onActivityResult結果的功能了. 定義一個接口, interface onActivityResult {

boolean onResult();

}需要監聽回調的自定義控件實現該接口. 在BaseActivity里面, 記錄這些控件, 當有結果返回時傳給這些控件:class BaseActivity {

List<onActivityResult> resultViewList = new ArrayList();void onCreate() { ResultView view = ...; resultViewList.add(view);}onActivityResult() { for (onActivityResult view : resultViewList) {boolean ret = view.onResult();if (ret) { break;} } }

}這樣就完全解決了控件需要拿到Activity結果的問題了.

以上為大概代碼, 實際上還有考慮: requestCode 重復問題, 要保存所有的View.

回答2:

通過listener的形式處理就可以了。

回答3:

上面的說的不錯 定義一個接口 用接口回調的方式來做 其他的通用的view 實現這個接口給就可以了

回答4:

我們的做法是把拍照和相冊寫成一個Module,然后給設置頭像的組件添加點擊事件,點擊跳轉到處理的界面,然后返回。Module中不包含那個設置組件,由Module的使用者自己設置。還有一種做法就是樓上所說的通過事件監聽,選擇相冊圖片或者拍照確定圖片后,觸發這個listener。我建議你問問你老大,是否確定把那個入口View也寫在Module中

回答5:

搭建一個本地maven倉庫,把這個控件,彈窗,跳轉功能封裝好。然后直接上傳到本地maven倉庫,之后再通過Gradle依賴到項目里去本地maven倉庫搭建,配置Gradle,上傳自己的library到倉庫內

一般像一些基礎功能的庫都可以這么做,一個人維護即可

回答6:

使用 onActivityResult 沒問題呀,嗶哩嗶哩就是這樣處理的 boxing;不想讓調用者處理 onActivityResult,可以寫個中間 Activity 處理完 onActivityResult,將結果通過回調傳給調用者;或者自定義一個相機回答7:

這類涉及到其他界面的邏輯我一般會寫個獨立的module,調用的時候使用接口,實現層用中間activity完成圖片的選取/處理,最后通過回調返回。這些東西你甚至都不用自己寫,GitHub上現成的輪子大把,隨便找一個ImagePicker用就行了。

回答8:

謝謝各位,這位回答基本是我的意思。 我的問題沒說清楚,我重構不是想要打造通用頭像控件,我要的是:這個頭像view放到業務Activity的布局中 ,然后調用者其他什么都不需要做了。什么網絡請求更新頭像 上傳頭像 選照片...全部封裝好,而不是回調給他自己處理,因為我們公司這幾款app的 頭像相關接口是通用的

標簽: java
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产999精品在线观看| 亚洲国产欧美日本视频| 91精品国产自产观看在线 | 日韩中文字幕亚洲一区二区va在线 | 国产精品a久久久久| 欧美成人精品| 午夜欧美巨大性欧美巨大| 国产精品一区二区美女视频免费看| 亚洲一区久久| 999国产精品999久久久久久| 麻豆mv在线观看| 国产伊人久久| 成人午夜在线| 欧美黄页在线免费观看| 欧美精品国产白浆久久久久| 日韩欧美四区| 欧美精选一区二区三区| 日韩久久电影| 精品香蕉视频| 青青草91久久久久久久久| 国产探花一区二区| 欧美日本一区| 欧美a在线观看| 国产精品成人自拍| se01亚洲视频| 日韩在线短视频| 在线亚洲激情| 亚洲一级大片| 日韩激情中文字幕| 国产精品欧美日韩一区| 精品国产亚洲日本| 久久男人天堂| 色综合www| 亚洲少妇一区| 91精品麻豆| av资源新版天堂在线| 午夜av成人| 91精品国产自产精品男人的天堂 | 亚洲精品一级| 精品女同一区二区三区在线观看| 久久99久久久精品欧美| 五月天久久网站| 伊人久久亚洲| 精品久久中文| 99国产精品99久久久久久粉嫩| 日韩中文av| 久久精品超碰| 伊人久久av| 国产手机视频一区二区| а√天堂中文在线资源8| 亚洲免费精品| 国产情侣久久| 999国产精品永久免费视频app| 日本h片久久| 欧美日韩国产一区二区三区不卡| 亚洲v天堂v手机在线| 高清一区二区| 日韩av一二三| 九九久久婷婷| 国产福利资源一区| 亚洲欧美久久精品| 欧美亚洲日本精品| 日本91福利区| 好看不卡的中文字幕| 国产精品毛片久久| 蜜桃精品视频| 日本国产欧美| 丝袜美腿亚洲一区二区图片| 日韩电影免费在线观看| 国产精品扒开腿做爽爽爽软件| 视频在线观看91| 激情自拍一区| 国产一区观看| 999久久久免费精品国产| 狂野欧美性猛交xxxx| 91成人在线网站| 青青久久av| 日本高清不卡一区二区三区视频 | 国产女人18毛片水真多18精品| 日本不卡的三区四区五区| 婷婷激情一区| 亚洲电影有码| 久久蜜桃精品| 国产综合激情| 欧美日韩视频| 亚洲欧洲av| 91大神在线观看线路一区| 国产亚洲字幕| 水蜜桃久久夜色精品一区| 欧美午夜网站| 老牛国内精品亚洲成av人片| 精品国产aⅴ| 欧洲一级精品| 天堂√中文最新版在线| 丰满少妇一区| 日本久久成人网| 在线亚洲一区| 国产探花一区在线观看| 久久久国产精品网站| av资源中文在线| 欧美日韩四区| 日韩毛片一区| 日韩毛片视频| 欧美va天堂在线| 中国女人久久久| 日韩精品一区二区三区av| 97成人在线| 久久一区二区三区喷水| 亚洲精品欧美| 色一区二区三区| 蜜臀国产一区二区三区在线播放| 久久国产婷婷国产香蕉| 久久久久欧美精品| 日韩不卡在线观看日韩不卡视频| 久久精品国产999大香线蕉| 欧产日产国产精品视频| 日韩中文字幕麻豆| 蜜桃传媒麻豆第一区在线观看| 午夜久久久久| av一区二区高清| 国产精品免费不| 亚洲国产成人精品女人| 欧美激情精品| 亚洲成人不卡| 久久高清精品| 国产精品久久久久77777丨| 黄毛片在线观看| 欧美性www| 免播放器亚洲| 999国产精品视频| 成人在线超碰| 欧美日韩视频免费看| 老牛影视一区二区三区| 日韩中文在线电影| 精品中文在线| 欧美成人高清| www.com.cn成人| 高清av一区| 精品视频久久| 国产精品欧美三级在线观看| 麻豆亚洲精品| 日韩视频二区| 成人午夜毛片| 精品日本视频| а√天堂8资源在线| 国产一区二区精品久| 国产精品久久免费视频| 先锋影音国产一区| 日韩视频一区| 免费观看久久久4p| 丰满少妇一区| 高清日韩中文字幕| av中文字幕在线观看第一页| 成年男女免费视频网站不卡| 日韩国产专区| 蜜桃视频欧美| 国精品一区二区三区| 香蕉精品久久| 老鸭窝亚洲一区二区三区| 一区二区三区国产在线| 亚洲aa在线| 色婷婷亚洲mv天堂mv在影片| 免费污视频在线一区| 欧美日韩国产探花| 亚洲丝袜啪啪| 综合国产在线| 免费视频一区二区三区在线观看 | 国产精品一区二区三区av| 美女在线视频一区| 麻豆久久一区二区| 欧美国产专区| 久久三级福利| 欧美va天堂在线| 日本三级亚洲精品| 国产精品久久久久9999高清| 免费人成网站在线观看欧美高清| 激情久久久久久久| 欧美偷窥清纯综合图区| 国产精品jk白丝蜜臀av小说| 国产成人精品免费视| 久久亚洲二区| 九九久久婷婷| 午夜电影亚洲| 日韩av网站在线观看| 日韩欧美精品综合| 国产伦精品一区二区三区视频| 国产一区二区三区四区大秀| 精品国产日韩欧美精品国产欧美日韩一区二区三区 | 久久久久蜜桃| 老司机免费视频一区二区| 蜜臀91精品一区二区三区| 久久69成人| 国产伦理一区| 日韩一区二区三区四区五区| 亚洲三级欧美| 国产 日韩 欧美 综合 一区| 日本va欧美va精品发布| 中文在线免费视频| 国产精久久久| 视频一区二区中文字幕|