2012-03-24 85 views
1

我的問題是如何檢查圖像的資源?在我的onClick方法中有一個倒計時(我總結,以避免長時間後)在每個滴答隨機化一個布爾值。如果爲true,img1資源設置爲headAppear.jpg。如果爲false,img1設置爲headHide.jpgAndroid - 獲取圖像的資源

我會在onClick()中加入什麼代碼來檢查圖片是否爲headAppearheadHide?我想要做的是,如果我點擊img1並顯示headAppear,score++。否則,如果它顯示headHidescore--


在我onCreate()方法:

ImageView img1 = (ImageView) findViewById(R.id.pic1); 
img1.setOnClickListener(this); 

//Countdown method here 
var = aRandom.nextBoolean(); 
if(var == true) { 
    img1.setImageResource(R.drawable.headAppear); 
} else { 
    img1.setImageResource(R.drawable.headHide); 
} 
//End of countdown method 

在我onClick(View v)方法:

if (v == img1) { 
    //insert code here 
} 
+1

歡迎來到SO Philip。研究鮑里斯和我對你的問題所作的編輯。一個格式良好的問題,是一個快速回答的問題;-) – puk 2012-03-24 16:46:30

+1

它現在正在工作..當我閱讀他的回覆時,我還沒有看到他的解決方案。順便說一句,還要感謝你先生停下來,幫助我.. :) – 2012-03-24 17:14:35

回答

1

不能恢復圖像資源來自包含ImageView我會推薦的你在你的if/else中設置了單獨的標誌我們來確定顯示的是什麼。這樣,你的代碼將變爲:

ImageView img1 = (ImageView) findViewById(R.id.pic1); 
img1.setOnClickListener(this); 

/*Countdown method here*/ 
var = aRandom.nextBoolean(); 
if (var==true) { 
    this.appear = true; 
    img1.setImageResource(R.drawable.headAppear); 
} else { 
    this.appear = false; 
    img1.setImageResource(R.drawable.headHide); 
} 
/*End of countdown method*/ 

而且檢查:

if (this.appear) { 
    /*insert code here*/ 
} 

或者你甚至可以讓帶班的知名度您var變量。

+0

你是什麼意思? – 2012-03-24 16:49:04

+0

我將使用什麼代碼來確定顯示的圖像? – 2012-03-24 16:51:29

+0

我已經在我的答案中包含了你需要的所有代碼,除了出現變量本身的聲明外。它應該是'私人布爾出現;'你把它放在你的班級聲明的下面:'公共班級......'你很好走。 – 2012-03-24 16:53:51

1

如果你確實想存儲資源,當你setImageResource你也可以setTag以及。