2012-07-04 57 views
0

我需要顯示ImageView的第二個,然後隱藏使用線程,當我點擊menuInflater。顯示ImageView的第二個,然後隱藏線程

例如:

public boolean onOptionsItemSelected(MenuItem item) { 

    super.onOptionsItemSelected(item); 

    switch (item.getItemId()){ 

    case R.id.txt1: 
     handler = new Handler (this); 
        Worker w = new Worker (handler); 
        Thread t = new Thread (w); 
        t.start(); 
     return true; 

你的意思是這樣的嗎?

protected int [] imgIds = { 
     R.id.img_1,R.id.img_2,R.id.img_3,R.id.img_4,R.id.img_5,R.id.img_6, 
     R.id.img_7,R.id.img_8,R.id.img_9,R.id.img_10,R.id.img_11,R.id.img_12, 
}; 

    public class Worker implements Runnable{ 

private Handler h; 

public Worker (Handler h) 
{ 
    this.h = h; 
} 

@Override 
public void run() { 

    for(int i=0; i<10; i++) 
    { 
     imgIds.setsetVisibility(View.INVISIBLE) 

     try{ 
      Thread.sleep(1000); 
     }catch (InterruptedException e){ 
      e.printStackTrace(); 
     } 
    } 
    h.postDelayed(Worker,1000); 

} 

}

然後是ImageView的隱藏,並開始遊戲。

+0

等等,什麼?這裏有問題嗎,還是您要求我們爲您編寫代碼?如果是後者,請不要期望社區的幫助。如果是前者,那麼請更具體地說明你的問題?現在,您只是給了我們一個簡短的程序規範以及您迄今爲止編寫的內容,而且我不完全確定其他人能夠從中獲得什麼。 – blahman

+0

我在說如果有人能告訴我什麼是我的這個代碼mystake。因爲它不起作用 – Azrael94

+1

您應該使用帶有postDelayed()和Runnable的Handler。不是線程。背景線程不允許更改UI,即使某些內容可見。 – FoamyGuy

回答

0
@Override 
public void run() { 

    for(int i=0; i<10; i++) 
    { 
     imgIds.setsetVisibility(View.INVISIBLE) 

     try{ 
      Thread.sleep(1000); 
     }catch (InterruptedException e){ 
      e.printStackTrace(); 
     } 
    } 
    Intent intent = new Intent(); 
    intent.setClass(sPlashScreen.this,Next.class); 
    startActivity(intent); 
    stop() 
} 

} 
+0

我不需要飛濺活動。我有一個TableLayout與ImageView然後當我點擊menuInflater它會出現五秒,然後隱藏 – Azrael94

+0

更改imgIds.setsetVisibility(View.INVISIBLE)imgIds.setsetVisibility(View.VISIBLE) –

相關問題