2011-09-08 123 views
1

我已經爲我的應用程序添加了一項新活動,該活動已經進行了一些其他活動。我試圖將我的新活動作爲主要活動。當單擊按鈕時,應該調用先前存在的活動。按鈕點擊沒有任何活動

我的問題是當我點擊按鈕沒有活動執行。

我也對manifest文件進行了更改。

我的第一個目的已經

login = (Button) findViewById(R.id.login); 
login.setOnClickListener(new OnClickListener() { 

    public void onClick(View arg0) { 
     // TODO Auto-generated method stub 

     if(userName.equals("admin")&&password.equals("admin")){ 
      Toast.makeText(getApplicationContext(), "Invalid UserName or Password", Toast.LENGTH_LONG); 
      Intent main = new Intent(getApplicationContext(), OpenNMS.class); 
      startActivity(main); 
     } else { 
      Toast.makeText(getApplicationContext(), "Invalid UserName or Password", Toast.LENGTH_LONG); 
     } 
    } 
}); 

我的清單文件是

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.opennms.android" 
    android:versionCode="1" 
    android:versionName="1.0"> 

    <uses-sdk android:minSdkVersion="8" /> 

    <uses-permission android:name="android.permission.INTERNET"></uses-permission> 

    <application android:icon="@drawable/icon" android:label="@string/app_name"> 
     <activity android:name=".Login" 
        android:label="@string/app_name"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 

     <activity android:name=".OpenNMS" android:label="@string/app_name"> 
     </activity> 
    </application> 
</manifest> 
+0

您確定要開始活動的條件爲真?你有真正和錯誤的情況下相同的吐司。 –

+0

它是否進入'onClick'? – Ronnie

回答

1

在你的代碼還沒有添加show()到吐司消息,

Toast.makeText(getApplicationContext(), "Invalid UserName or Password", Toast.LENGTH_LONG); 

它應該是像這樣

Toast.makeText(getApplicationContext(), "Invalid UserName or Password", Toast.LENGTH_LONG).show(); 

所以,它可能會在你不能看到吐司的其他部分。

謝謝。 Suri Sahani。

+0

我說得對,它會進入其他部分。我只使用記錄器來發現用戶名和密碼字段是空的。但爲什麼會發生這種情況 – TechnocraT

+0

因此,你將不得不告訴我完整的代碼,你如何檢查管理員的詳細信息。 –

+0

如果您將「Admin」作爲用戶名或密碼,請使用equalsIgnoreCase代替等於的值。 –

0

試試這個:

login = (Button) findViewById(R.id.login); 
login.setOnClickListener(new View.OnClickListener() { 

    public void onClick(View arg0) { 
     // TODO Auto-generated method stub 

     if(userName.equals("admin")&&password.equals("admin")){ 
      Toast.makeText(getApplicationContext(), "Invalid UserName or Password", Toast.LENGTH_LONG).show(); 
      Intent main = new Intent(getBaseContext(), OpenNMS.class); 
      startActivity(main); 
     } else { 
      Toast.makeText(getBaseContext(), "Invalid UserName or Password", Toast.LENGTH_LONG).show(); 
     } 
    } 
}); 

你錯過view

login.setOnClickListener(new OnClickListener() { 

login.setOnClickListener(new View.OnClickListener() { 
0

改變這一行

Intent main = new Intent(getApplicationContext(), OpenNMS.class); 

Intent main = new Intent(Login.this, OpenNMS.class); 

,看看它是否工作。