2011-10-17 70 views
0

您好我工作在藍牙android中,我有一個按鈕單擊它執行2個活動。首先點擊它應該執行迴風,並在第二次點擊它應該執行閱讀設定點。但在我的代碼中只有一個活動運行,並且它不會在第二次點擊時進入第二個活動。在我的代碼中,只有一個處理程序來執行這2個活動。我應該有兩個處理程序來執行這兩個活動?我怎麼能實現一個按鈕onclick兩個功能在android

這裏是我的代碼: 這瓶坯第一次點擊:

private void returnair() { 
    //return air 
    Log.d(TAG, "returnair()"); 
    setContentView(R.layout.dummy); 
    load = (Button) findViewById(R.id.button1); 
    load.setOnClickListener(new OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      String text = "16 16 36 01 10 00 00 00 00 00 00 00 00 00 00 00 00 88 47 "; 
      sendMessage(text); 
     } 
    }); 
    mChatService = new blootoothchatservice(this, mHandler); 
    mOutStringBuffer = new StringBuffer(""); 
} 

此進行第2點擊:

private void setpoint() { 
     //reading setpoint 
     Log.d(TAG, "setpoint()"); 
     setContentView(R.layout.dummy); 
     load = (Button) findViewById(R.id.button1); 
     load.setOnClickListener(new OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       String resp = "16 16 36 07 02 00 00 00 00 00 00 00 00 00 00 00 00 B7 93 "; 
       sendsetresponses(resp); 
      } 
     }); 
     mChatService = new blootoothchatservice(this, mHandler); 
     mOutStringBuffer = new StringBuffer(""); 
} 
+1

你沒有嘗試在每次點擊時設置一個全局變量,以知道按鈕上的點擊,第1次或第2次點擊? – Hiral

+0

從哪裏調用這兩種方法?在onstart()函數中調用 –

+0

這個方法。 – user976538

回答

7

應用如何知道是否被點擊按鈕一次,兩次?您需要存儲第一個函數是否已經運行,以及是否運行了第二個函數。該邏輯可以添加到一次點擊事件,如下面的僞代碼。

global int click = 0; 

onClick() { 
    if (click == 0) { 
     click = 1; 
     returnair(); 
    } 
    else 
     setpoint(); 
}