亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

請問到底有沒有什么辦法,只修改二進制文件,而不要改變UIImage的對象?

請問到底有沒有什么辦法,只修改二進制文件,而不要改變UIImage的對象?

iOS
搖曳的薔薇 2023-04-14 18:14:17
我在頭文件里定義了一個UIImage對象,然后在init方法里初始化。但是在接下來的運行時代碼里,要動態的修改這個UIImage對象的圖片二進制文件,有沒有什么辦法,只修改二進制文件,而不要改變UIImage的對象?
查看完整描述

1 回答

?
HUX布斯

TA貢獻1876條經驗 獲得超6個贊

只能重新初始化一個UIImage,具體原因有點長,首先UIImage是個聚類,不能簡單繼承;其次DataProvider讀出的C指針里指向的數據不允許修改,尤其在iOS6上更加嚴格,有修改就崩潰。

如果你只是想換張切圖,重新初始化一個UIImage替代之前的就可以了

如果想處理圖片的話:
1.DataProvider讀出圖片imageA的C指針a
2.malloc分配相同大小的內存,指針為b,memcpy從a拷貝到b
3.按照你的想法改變b的內容
4.用改變后的b新建CGContext,從CGContext保存新的圖片imageB
5.將imageB賦給以前imageA的UIImageView?;蛘咴赿rawRect中重繪等


查看完整回答
反對 回復 2023-04-17
  • 1 回答
  • 0 關注
  • 184 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號