2014-04-09 51 views
0

我正在制作一个会员卡应用程序,只需点击一张会员盖章时应用程序打开一个新窗口。我已经取得了这个成绩,但是我希望它要求一个通行代码来使忠诚邮票成为官方标志,我已经到了可以打开一个新窗口并要求提供代码的地步,但是当我按下按钮时它什么都不做。我确实拥有它,所以当我按下按钮时,它将我发回到之前的活动,但现在它甚至不会那样做。比较输入密码的文本Android

下面是询问代码的活动:

package com.example.reloadgamesapp; 

import android.app.Activity; 
import android.content.Intent; 
import android.os.Bundle; 
import android.text.Editable; 
import android.text.TextWatcher; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.EditText; 


public class LoyaltyWindow extends Activity implements OnClickListener, TextWatcher { 

private EditText passcode; 
String unlock_code = "supern1nja"; 
int unlock = 0; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    this.setContentView(R.layout.loyalty_window); 

    //get Button reference 
    View v = findViewById(R.id.code_button); 
    //set event listener 
    v.setOnClickListener(this); 

    passcode = (EditText) findViewById(R.id.passcode); 
    passcode.addTextChangedListener(this); 

} 

@Override 
public void onClick(View arg0) { 
    if(arg0.getId() == R.id.code_button && unlock != 0) { 
     Intent intent = new Intent(this, MainActivity.class); 

     //start 
     this.startActivity(intent); 
    } 
} 

@Override 
public void afterTextChanged(Editable arg0) { 
    String passString = passcode.getText().toString(); 

    if(passString == unlock_code) { 
     unlock = 1; 
    } else { 
     unlock = 0; 
    } 
} 

@Override 
public void beforeTextChanged(CharSequence arg0, int arg1, int arg2, 
     int arg3) { 
    // TODO Auto-generated method stub 

} 

@Override 
public void onTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) { 
    // TODO Auto-generated method stub 

} 

}

任何帮助将非常感激,我很新的这一点。

感谢

回答

0

的字符串都使用passString.equals(unlock_code)比较。所以,你的代码应该是这样的:

if(passString.equals(unlock_code)) { 
    unlock = 1; 
} else { 
    unlock = 0; 
} 

但我要提醒你,把你的unlock_code在应用程序的源代码,使得它可以很简单的找到它。拥有正确工具的任何人都可以将APK反编译为Java源代码。

您可以使用finish()返回上一个活动。

+0

哎谢谢你的帮助,虽然可惜这似乎没有改变任何东西,当我点击提交按钮输入密码时,什么也没有发生。它似乎没有实际检索代码并检查它。 – Bugsy6