我是android的新手....我创建了一个项目,我在其中创建了一个studreg.class和studreg.xml文件。还有一个string.xml,因为我用来创建微调器。
现在setContentView无法识别studreg.xml,而且我也看不到gen文件夹中的任何R.java。请看下面的cod并帮助我。
studreg.xml**
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">IITKOL</string>
<string name="hello_world">Hello world!</string>
<string name="action_settings">Settings</string>
<string name="qualification">Select Highest Qualification</string>
<string-array name="list_qualification">
<item>item1</item>
<item>item2</item>
<item>item3</item>
<item>item4</item>
<item>item5</item>
<item>item6</item>
<item>item7</item>
<item>item8</item>
</string-array>
</resources>
studreg.java**
package iitkol.com;
import android.app.Activity;
import android.R;
import android.content.ContentValues;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;
public class studreg extends Activity{
protected static final int LENGTH_LONG = 0;
private TextView st_heading;
private EditText st_name,st_phno,st_email;
private Spinner st_course,st_qlf;
private Button st_submit,st_reset;
private DataHelper dataHelper;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.studreg);
st_heading=(TextView)findViewById(R.id.heading);
st_name=(EditText)findViewById(R.id.edit_name);
st_phno=(EditText)findViewById(R.id.edit_contact);
st_email=(EditText)findViewById(R.id.edit_emailid);
st_course=(Spinner)findViewById(R.id.course);
st_qlf=(Spinner)findViewById(R.id.qlf);
st_submit=(Button)findViewById(R.id.btn_submit);
st_reset=(Button)findViewById(R.id.btn_reset);
st_submit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ContentValues contentValues = new ContentValues();
contentValues.put("studname",st_name.getText().toString().trim());
contentValues.put("studphno",st_phno.getText().toString().trim());
contentValues.put("studemail",st_email.getText().toString().trim());
contentValues.put("studqlf",st_qlf.getContext().toString().trim());
contentValues.put("studcourse",st_course.getContext().toString().trim());
dataHelper.insert("studform",contentValues);
Toast.makeText(studreg.this,"Thanks for registering.We will contact you shortly",LENGTH_LONG).show();
}
});
}
strings.xml**
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">IITKOL</string>
<string name="hello_world">Hello world!</string>
<string name="action_settings">Settings</string>
<string name="qualification">Select Highest Qualification</string>
<string-array name="list_qualification">
<item>item1</item>
<item>item2</item>
<item>item3</item>
<item>item4</item>
<item>item5</item>
<item>item6</item>
<item>item7</item>
<item>item8</item>
</string-array>
</resources>
答案 0 :(得分:0)
由于您的gen文件夹中没有R.java文件,这意味着在r.java文件中不会检测到您的xml文件视图,因此我们有xml视图(如按钮,图像视图等)id&#39; s编译器为xml中的每个视图生成id。正如你所说,你的项目中没有R.java,只是意味着setContentView不会检测你的xml文件。因此,为了消除此错误,您必须首先生成R.java文件。
要生成文件,您必须清理项目并再次构建它。 eclipse将再次生成该文件。但有时它不生成所以如果上述方法不起作用,还有另一种方法,然后尝试更改工作区并将该项目导入新工作区,然后清理并再次构建它。
答案 1 :(得分:0)
您在帖子中的studreg.xml下粘贴了strings.xml。请仔细检查。
通常,如果xml中出现错误,编译器将无法生成R.java,并且所有使用R.xxx.xxx的java代码都会出错。