日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

android 图像对比,Android中比较两个图片是否一致的问题

發布時間:2024/9/3 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android 图像对比,Android中比较两个图片是否一致的问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在Fragment界面中,設置兩個圖片一致如下:

默認設置圖片為:

binding.ivArrow.setImageResource(R.drawable.icon_down);

先獲取默認圖片,再和其它兩張圖片做對比,然后處理業務邏輯:

Drawable.ConstantState ivArrow = binding.ivArrow.getDrawable().getCurrent().getConstantState();

Drawable.ConstantState icon_up = getDrawable(R.drawable.icon_up).getConstantState();

Drawable.ConstantState icon_down = getDrawable(R.drawable.icon_down).getConstantState();

Log.e("--->ivArrow$", "$" + ivArrow);

Log.e("--->icon_up$", "$" + icon_up);

Log.e("--->icon_down", "$" + icon_down);

if (ivArrow.equals(icon_up)) {

binding.ivArrow.setImageResource(R.drawable.icon_down);

} else if (ivArrow.equals(icon_down)) {

binding.ivArrow.setImageResource(R.drawable.icon_up);

}

打印結果如下:

顯然通過日志發現,每個圖片的資源都不一致,這是為什么,通過點擊getDrawable查看源碼發現

這個不是我們想要的,我們要的是id,怎么解決呢,因為是在Fragment中,所以要加上 getActivity()

設置完后,看下效果

完整代碼如下:

Drawable.ConstantState ivArrow = binding.ivArrow.getDrawable().getCurrent().getConstantState();

Drawable.ConstantState icon_up = getActivity().getDrawable(R.drawable.icon_up).getConstantState();

Drawable.ConstantState icon_down = getActivity().getDrawable(R.drawable.icon_down).getConstantState();

Log.e("--->ivArrow$", "$" + ivArrow);

Log.e("--->icon_up$", "$" + icon_up);

Log.e("--->icon_down", "$" + icon_down);

if (ivArrow.equals(icon_up)) {

binding.ivArrow.setImageResource(R.drawable.icon_down);

} else if (ivArrow.equals(icon_down)) {

binding.ivArrow.setImageResource(R.drawable.icon_up);

}

到此這篇關于Android中比較兩個圖片是否一致的文章就介紹到這了,更多相關Android 比較兩個圖片是否一致內容請搜索我們以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持我們!

時間: 2020-10-29

總結

以上是生活随笔為你收集整理的android 图像对比,Android中比较两个图片是否一致的问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。