設置頭像,手機拍照或從本地相冊選取圖片作爲頭像

像微信、QQ、微博等社交類的APP,通常都有設置頭像的功能,設置頭像通常有兩種方式:

1.讓用戶啓動手機的相機拍照,拍完照片後裁剪,然後作爲頭像。

2.讓用戶通過選擇本地相冊之類的圖片庫中已有的圖像,裁剪後作爲頭像。

遇到的難點:

1.版本大於7.0,圖片的路徑是必須被封裝了的,使用FileProvider內容提供器,將被封裝過的URI共享給外部,FileProvider中的getUriForFile()方法將File對象轉換成一個封裝過的Uri。

2.由於4.4以上,選取相冊中的圖片返回一個封裝後的Uri。

3.運行時權限

4.剪裁相片的代碼和上面使用意圖打開相機一樣,如果本機版本大於等於anroid7.0需要臨時授權Uri的訪問權限如下:

intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);

 

代碼方面就沒啥問題了,具體見 薦幣項目 SettingActivity.java

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章