我有一個背景定義爲可繪製的佈局,我想在某些情況下將其更改爲另一個。我如何獲得當前背景的標識以瞭解它是什麼?獲取視圖的當前背景ID
4
A
回答
3
你好你可以試試這個例子,
btnNew =(Button)findViewById(R.id.newButton);
// compare newlist
if(newButton.getBackground()!=(findViewById(R.id.imgAdd)).getBackground())
{
btnNew.setBackgroundResource(R.drawable.imgDelete);
}
1
您可以通過這種方式嘗試。
將id分配給您想根據條件更改背景的佈局。做這樣的
linear1 = (LinearLayout) findViewById(R.id.bg_l_l);
if(condition==true)
{
linear1.setBackgroundDrawable(R.drawable.sample_thumb_0);
}
else if (condition2==true)
{
linear1.setBackgroundDrawable(R.drawable.sample_thumb_1);
}
else
{
linear1.setBackgroundDrawable(R.drawable.sample_thumb_2);
}
1
你可以簡單地得到整個Drawable
通過Drawable beforeClickDrawalbe=view.getBackground();
並做更改您的視圖的背景:如果你想將其設置回view.setBackgroundDrawable(getResources().getDrawable(R.drawable.YOUR_DRAWABLE));
,然後最初的背景你不需要ID 因爲你有整個Drawable所以做: view.setBackgroundDrawable(beforeClickDrawalbe));
就這樣!
5
這可能是一個很古老的問題,但爲了以防萬一,如果人們還在尋找它:
if(yourView.getBackground().getConstantState().equals(
getResources().getDrawable(R.drawable.yourdrawable).getConstantState()){
//do something if this is the correct drawable
}
+0
你真棒感謝很多.. !!! :) –
相關問題
- 1. 獲取當前背景
- 2. 如何獲得當前圖像背景ID
- 3. 前視圖背景透明
- 4. 獲取當前視圖
- 5. 如何獲得當前的視圖ID和以前的視圖ID在jsf
- 6. 如何在dojo mobile中獲取當前視圖的id?
- 7. 作爲當前設置的背景圖像查看背景?
- 8. 獲取當前帖子ID
- 9. Android:保持背景視圖更改前景視圖
- 10. 在iOS7的背景狀態下修改當前視圖
- 11. 如何獲取當前鰭狀肢的圖像ID查看並將該圖像設置爲用戶背景?
- 12. 從背景提取前景
- 13. 背景圖基於當前月
- 14. WPF當前圖像沒有背景
- 15. ASP.net MVC獲取當前視圖引擎
- 16. 在當前視圖中獲取標籤
- 17. 獲取當前視圖實例?
- 18. Android:ViewPager FragmentStatePagerAdapter獲取當前視圖
- 19. iOS - 獲取當前視圖控制器
- 20. 從視圖中獲取當前用戶
- 21. 獲取滾動視圖當前contentOffset
- 22. 獲取背景
- 23. Android獲取父視圖的背景顏色,如果沒有背景顏色集
- 24. 在Android中,如何讀取當前按鈕的背景圖片?
- 25. 獲取當前背景顏色並在.hover之後重置它?
- 26. 如何獲取當前控制檯背景和文本顏色?
- 27. 如何從背景頁面獲取當前tabId
- 28. Chrome擴展程序獲取當前主題背景
- 29. MVC HTML助手,獲取當前局部視圖的父視圖
- 30. 從當前捕獲獲取設備ID
你應該設置'id'佈局,成爲電流,然後聲明它由'findviewbyid' incode和那麼通過這個聲明你將能夠改變背景 – deadfish
這個問題很有趣,但是我沒有看到用例? – njzk2