2015-05-14 38 views
1

在我陳述我的問題之前,我只想說我對Android Studio和Java相當陌生。我一直在學習,隨着自己的錯誤學習。所以對我很容易,我是一個新手:P其他意圖

所以我開始在Android Studio中的一個項目。在我的主要活動我已經創建了兩個按鈕 - 「註冊」和「登錄」

現在,我已經成功地創建和意圖爲我的「註冊」按鈕,進入到一個新的活動(第二活動)

但問題是我的'登錄'按鈕。爲什麼當我點擊「登錄」按鈕時,它沒有響應,直接進入另一個新的活動(第3活動),因爲我已經創建了onClickListener?

我必須點擊'註冊'按鈕才能進入註冊活動,然後按'返回',然後點擊登錄按鈕即可轉到登錄活動。

我真的很希望這是有道理的。

如果有人找到我,我將非常感激。這可能是一個非常簡單的修復,但正如我所說,我是新手聳肩

然而,現在我就鼓搗並嘗試去解決它

提前感謝!

(讓我知道你是否希望我發佈相關代碼)。

public class MainActivity extends ActionBarActivity { 
private static Button Button_sbm; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    OnClickButtonListener(); 
} 

public void OnClickButtonListener(){ 
    Button_sbm = (Button) findViewById(R.id.signupbut); 
    Button_sbm.setOnClickListener(
      new View.OnClickListener() { 
       @Override 
       public void onClick(View v) { 
        Intent intent = new Intent("com.teamsix.fezzy.gosheesh.Signupactivity"); 
        startActivity(intent); 


        Button signinbut = (Button) findViewById(R.id.signinbut); 
        signinbut.setOnClickListener(new View.OnClickListener() { 
         @Override 
         public void onClick(View v) { 
          Intent intent = new Intent ("com.teamsix.fezzy.gosheesh.SignIn"); 
          startActivity(intent); 
+2

發佈代碼是標準的。 – tachyonflux

+0

我的歉意。代碼已放在上面。 –

回答

0

那是因爲你只是鏈接爲您點擊申請後,在此之前註冊的點擊監聽器,按鈕沒有點擊收聽。

您的代碼應該是這樣的

public void OnClickButtonListener(){ 
Button_sbm = (Button) findViewById(R.id.signupbut); 
Button_sbm.setOnClickListener(
     new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       Intent intent = new Intent("com.teamsix.fezzy.gosheesh.Signupactivity"); 
       startActivity(intent); 
       } 
      }); 
Button signinbut = (Button) findViewById(R.id.signinbut); 
signinbut.setOnClickListener(new View.OnClickListener() { 
        @Override 
        public void onClick(View v) { 
         Intent intent = new Intent ("com.teamsix.fezzy.gosheesh.SignIn"); 
         startActivity(intent); 
        } 
}); 
+0

嗯,這很奇怪。我把你給我的東西放進去了,但是.'signinbut.setOnClickListener'(setOnClickListener)變成了RED? 謝謝你的回覆 –

+0

是的,我忘了添加兩個右括號「}」 –

+0

抱歉給你打了個電話,但是你忘了把兩個右括號放在哪裏? :/ –

0

我也很新,Android的編碼,但遇到了類似的問題,我得到了全面的路上有人這樣做:

public class MainActivity extends ActionBarActivity implements OnClickListener 
{ 
    private Button Button_sbm, signinbut; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     Button_sbm = (Button) findViewById(R.id.signupbut); 
     signinbut = (Button) findViewById(R.id.signinbut); 

     Button_sbm.setOnClickListener(this); 
     signinbut.setOnClickListener(this); 
    } 

    @Override 
    public void onClick(View v) 
    { 
     switch (v.getId()) 
     { 
      case R.id.signupbut: 
       Intent intent = new Intent("com.teamsix.fezzy.gosheesh.Signupactivity"); 
       startActivity(intent); 
      break; 
      case R.id.signinbut: 
       Intent intent = new Intent("com.teamsix.fezzy.gosheesh.SignIn"); 
       startActivity(intent); 
      break; 
     } 
    } 
} 

還發現它使得它稍後更容易讀取/編輯代碼。

相關問題