android.content.res.Resources $ NotFoundException

@Override public void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.screenlocked); //Retrieve stored ID final String STORAGE = "Storage"; SharedPreferences unique = getSharedPreferences(STORAGE, 0); LoginID = unique.getString("identifier", ""); //Retrieve stored phone number final String phoneNumber = unique.getString("PhoneNumber", ""); phoneView = (TextView) findViewById(R.id.phone); phoneView.setText(phoneNumber.toString()); //Retrieve user input input = (EditText) findViewById(R.id.editText1); userInput = input.getText().toString(); //Set login button login = (Button) findViewById(R.id.login); login.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { compareID(); } }); } public void compareID(){ if (userInput.equals(LoginID)){ //phone screen unlocked //continue Toast.makeText(ScreenLockActivity.this, "Success!", Toast.LENGTH_SHORT).show(); } else{ count += 1; input.setText(""); Toast.makeText(ScreenLockActivity.this, count, Toast.LENGTH_SHORT).show(); } } 

Estoy desarrollando una activity inicio de sesión y me gustaría registrar cuántas veces el usuario intentó iniciar sesión, por lo que cada vez que hay un bash de inicio de sesión, el recuento boostá en uno … pero cuando ejecuto la actividad, aparece este error en mi logcat:

android.content.res.Resources$NotFoundException: String resource ID #0x1 ,

¿Alguien puede ayudarme a resolver este problema?

Aquí está tu error:

 Toast.makeText(ScreenLockActivity.this, count, Toast.LENGTH_SHORT).show(); 

el makeText que está tratando de invocar aquí, es el makeText que toma como segundo parámetro un resId . Mira aquí para más información. Como desea imprimir el valor de conteo, debe convertirlo en una Cadena.

 String value = String.valueOf(count); Toast.makeText(ScreenLockActivity.this, value, Toast.LENGTH_SHORT).show(); 

Esta línea debe estar dentro de onClick() o compareID() :

 userInput = input.getText().toString();