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(); } }
我正在开发一个登录activity
,我想记录用户尝试登录的次数,因此每次登录尝试时计数都会增加一个…但是当我运行活动时,此错误会出现在我的logcat:
android.content.res.Resources$NotFoundException: String resource ID #0x1
,
有人可以帮我解决这个问题吗?
这是你的错:
Toast.makeText(ScreenLockActivity.this, count, Toast.LENGTH_SHORT).show();
您尝试在此处调用的makeText
是makeText
,它将makeText
作为第二个参数。 有关详细信息,请参见此处 由于您要打印计数值,因此必须将其转换为String。
String value = String.valueOf(count); Toast.makeText(ScreenLockActivity.this, value, Toast.LENGTH_SHORT).show();
这行应该在onClick()
或compareID()
:
userInput = input.getText().toString();