小編給大家分享一下surfacechanged出現(xiàn)的原因是什么,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
創(chuàng)新互聯(lián)一直秉承“誠信做人,踏實做事”的原則,不欺瞞客戶,是我們最起碼的底線! 以服務為基礎,以質(zhì)量求生存,以技術求發(fā)展,成交一個客戶多一個朋友!為您提供成都網(wǎng)站制作、成都網(wǎng)站設計、外貿(mào)營銷網(wǎng)站建設、成都網(wǎng)頁設計、微信平臺小程序開發(fā)、成都網(wǎng)站開發(fā)、成都網(wǎng)站制作、成都軟件開發(fā)、app軟件定制開發(fā)是成都本地專業(yè)的網(wǎng)站建設和網(wǎng)站設計公司,等你一起來見證!surfacechanged出現(xiàn)的原因
屏幕的分辨率是固定的,但是預覽的分辨率是可以修改的
打個比方,(以下單位都是px,為了方便理解我們固定手機為豎屏,橫向作為寬,縱向作為高)當前預覽的分辨率是1280960(4:3)手機屏幕分辨率是19201080(16:9)設置的surfaceview固定的情況下都是寬高都設置為match_parent,那么它的高寬就是屏幕的高寬為1920*1080。就導致我們強行把寬為960像素的圖片放到寬度為1080的畫布上導致橫向就有了一定的拉伸,同理縱向也被從1280拉到了1920,很顯然寬度放大了1080/960倍,高度放大了1920/1280倍,這兩個值肯定不相等,導致預覽變形。
surfacechanged解決方法
第一種選擇合適的分辨率
如上所說,既然屏幕分辨率是死的,那我們就先獲得屏幕分辨率再設置預覽分辨率和屏幕分辨率一樣,或者比例是一樣的不就好了。
1.獲取屏幕分辨率
2.設置預覽的分辨率(在此之前要先獲取此手機支持的分辨率,亂設置會有問題的)
這是我這臺測試機所支持的預覽分辨率
比如手機分辨率是19201080的,那取第一個調(diào)用parameters.setPreviewSize();函數(shù)就可以完美解決了。現(xiàn)在出現(xiàn)很多分辨率很高的手機,或者長屏的手機,作者的測試機屏幕分辨為22801080,然而又沒有合適的分辨率,這個方法就沒辦法解決了,看看第二種。
看完了這篇文章,相信你對“surfacechanged出現(xiàn)的原因是什么”有了一定的了解,如果想了解更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
網(wǎng)站題目:surfacechanged出現(xiàn)的原因是什么-創(chuàng)新互聯(lián)
分享網(wǎng)址:http://muchs.cn/article12/icsdc.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供Google、網(wǎng)站導航、軟件開發(fā)、網(wǎng)站設計、手機網(wǎng)站建設、動態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容