我是Android的新手。我正在开发一个简单的注册登录系统。在每个类中,每个R出现的错误都很多。错误是R无法解析为变量。我在这里发布一个类代码< / p>
这是我的代码
package com.UserAccounts;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class SignUPActivity extends Activity
{
EditText editTextUserName,editTextPassword,editTextConfirmPassword;
Button btnCreateAccount;
LoginDataBaseAdapter loginDataBaseAdapter;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.signup);
// get Instance of Database Adapter
loginDataBaseAdapter=new LoginDataBaseAdapter(this);
loginDataBaseAdapter=loginDataBaseAdapter.open();
// Get Refferences of Views
editTextUserName=(EditText)findViewById(R.id.editTextUserName);
editTextPassword=(EditText)findViewById(R.id.editTextPassword);
editTextConfirmPassword=(EditText)findViewById(R.id.editTextConfirmPassword);
btnCreateAccount=(Button)findViewById(R.id.buttonCreateAccount);
btnCreateAccount.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
String userName=editTextUserName.getText().toString();
String password=editTextPassword.getText().toString();
String confirmPassword=editTextConfirmPassword.getText().toString();
// check if any of the fields are vaccant
if(userName.equals("")||password.equals("")||confirmPassword.equals(""))
{
Toast.makeText(getApplicationContext(), "Field Vaccant", Toast.LENGTH_LONG).show();
return;
}
// check if both password matches
if(!password.equals(confirmPassword))
{
Toast.makeText(getApplicationContext(), "Password does not match", Toast.LENGTH_LONG).show();
return;
}
else
{
// Save the Data in Database
loginDataBaseAdapter.insertEntry(userName, password);
Toast.makeText(getApplicationContext(), "Account Successfully Created ", Toast.LENGTH_LONG).show();
}
}
});
}
@Override
protected void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
loginDataBaseAdapter.close();
}
}
答案 0 :(得分:2)
如果您的类与清单中声明的应用程序包不同,则需要导入应用程序的R
类。表格应为
import your_app_package_name_as_defined_in_the_manifest.R;
请注意,如果项目的任何资源文件中存在错误,则不会生成R.java文件,并且不存在R
类。如果是这种情况,请解决资源文件错误,未定义的R
类错误将消失。
答案 1 :(得分:1)
检查res文件夹中是否有错误,然后对项目进行清理(项目 - &gt;清理)
答案 2 :(得分:0)
您需要导入yourpackage.R然后错误将被解决...我认为这将是一些像导入com.UserAccounts.R
答案 3 :(得分:0)
首先我是&#34;导入your_app_package_name_as_defined_in_the_manifest.R;&#34;之后我按下Project - &gt;干净,干净。谢谢!
答案 4 :(得分:0)
将我自己的资源文件导入到我自己的包中是我想做的最后一件事。你不应该这样做 求助于这个IMO! (但是,之前我已经使用了这个!Hypocrite!)
我已多次遇到此问题,这是由与我的xml文件相关的不同内容引起的。
检查: *你在调用Inflator.inflate ... R.id.my_resource.xml的任何onCreatView()方法中都有拼写错误。
*看看&#39; Design&#39;布局编辑器中的选项卡。检查它们是否都指向相同的Android版本。像23等。
*在布局编辑器中,检查您正在使用的主题。
*有时您可能在xml中有一个Include标记,该标记并不指向要包含的另一个xml文件。
*继续关注xml和inflator,有时给定的布局似乎没有 问题,用红线表示。
*如果您仍然无法解决问题,请查看其他资源文件中的拼写错误和错误。
*您可能还需要运行&#39; clean&#39;每次你做出改变。
*休息一下,稍后再回来。