2012-06-20 58 views
0

我有一個菜單按鈕和一個運動類爲更長的state_pressed狀態(0,5秒)。只要一切正常,但會出現一個問題:安卓「state_pressed」只能在第二次嘗試

我必須按第一次按鈕,state_pressed在第一次不工作,然後第二次嘗試我的代碼正常工作,並且state_pressed與0一起工作,持續5秒。

我怎樣才能讓它在第一次印刷時起作用?我認爲tehre是hover.xml文件的問題,並且與setBackgroundDrawable結合使用?

非常感謝您的幫助!

這是我hover.XML繪製

<?xml version="1.0" encoding="utf-8"?> 

<item android:state_focused="false" 
     android:state_pressed="true" 
     android:drawable="@drawable/buttonstyle_pressed" /> 

<item android:drawable="@drawable/buttonstyle" /> 

這是我的java代碼

Button menubutton_start; 

    menubutton_start = (Button) FindViewById(R.id.menustart); 


menubutton_start.setOnClickListener(new View.OnClickListener() { 

public void onClick(View v) {  

    menubutton_start.setBackgroundDrawable(getResources().getDrawable(R.drawable.hover)); 


    final Handler handler = new Handler();    

     handler.postDelayed(new Runnable() { 

       public void run() { 

       Intent myIntent = new Intent(GameActivity.this, NextActivity.class); 
       GameActivity.this.startActivity(myIntent); 

        } 

       }, 500); // end of Handler new Runnable() 


    } // end of OnClick() 


}); // end of setOnClickListener 

回答

0

如果將該樣式應用於按鈕,則按下狀態將自動發生。

您不應該在代碼中手動設置按下狀態。

+0

我已將eclipse環境更新至4.0.3,並且此錯誤再次發生。 (在2.2工作):-(thx任何幫助! – synthesis

+0

所以現在終於解決了這個問題,它是我的background_img,它覆蓋在普通按鈕上,所以在第一次按下時,pressed pressed狀態無法檢查資源。 – synthesis

相關問題