Android中比較兩個圖片是否一致的問題
在Fragment界面中,設置兩個圖片一致如下:
默認設置圖片為:
binding.ivArrow.setImageResource(R.drawable.icon_down);
先獲取默認圖片,再和其它兩張圖片做對比,然后處理業(yè)務邏輯:
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); }
打印結果如下:
顯然通過日志發(fā)現(xiàn),每個圖片的資源都不一致,這是為什么,通過點擊getDrawable查看源碼發(fā)現(xiàn)
這個不是我們想要的,我們要的是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 比較兩個圖片是否一致內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Android開發(fā)之a(chǎn)ctivity的生命周期詳解
這篇文章主要介紹了Android開發(fā)之a(chǎn)ctivity的生命周期,詳細分析了activity的運行原理與生命周期,需要的朋友可以參考下2016-06-06Android Studio導入Eclipse項目的兩種方法
本文主要介紹了Android Studio導入Eclipse項目的兩種方法。具有一定的參考價值,下面跟著小編一起來看下吧2017-01-01Android Zygote啟動構造流程及進程創(chuàng)建詳解
這篇文章主要為大家介紹了Android Zygote啟動構造流程及進程創(chuàng)建詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-07-07Android中ViewPager實現(xiàn)滑動指示條及與Fragment的配合
這篇文章主要介紹了Android中ViewPager實現(xiàn)滑動指示條及與Fragment的配合,使用Fragment實現(xiàn)ViewPager的滑動是一種比較推薦的做法,需要的朋友可以參考下2016-03-03