我正在使用Eclipse开发我的第一个Android应用程序。
我的activity_main.xml
视图的代码如下:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="biztalkers.gcmtest3.MainActivity"
tools:ignore="MergeRootFrame" >
<TextView
android:id="@+id/txtToken"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
</FrameLayout>
我的MainActivity.java类中有以下代码
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final TextView txtToken = (TextView) findViewById(R.id.txtToken);
我的问题在于代码块"final TextView txtToken = (TextView) findViewById(R.id.txtToken);"
中的最后一行,为此我收到错误"txtToken cannot be resolved or is not a field"
。谁能看到我做错了什么?
以下是导入
package biztalkers.gcmtest3;
import java.io.IOException;
import java.util.concurrent.atomic.AtomicInteger;
import com.google.android.gms.gcm.GoogleCloudMessaging;
import android.content.Context;
import android.content.SharedPreferences;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager.NameNotFoundException;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v7.app.ActionBarActivity;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import biztalkers.gcmtest3.R;
行“import biztalkers.gcmtest3.R;”带有下划线的红色,因为它“无法解决”
答案 0 :(得分:2)
像这样清理并重建你的项目,
项目 - &gt;清洁 - &gt;检查项目并按“确定”。
同时验证您的导入..如果您import android.R
删除它..您只应使用import com.example.R
答案 1 :(得分:0)
只需保存项目中的每个文件。因为在保存时将修改R.java
。现在您的布局中可能有TextView
。但是,项目中不会更新....
答案 2 :(得分:0)
通过使用新ID更改TextView的ID并重新打开并重建项目来重试。
答案 3 :(得分:0)
感谢dcharms。问题是由于其中一个res文件中的错误
答案 4 :(得分:-1)
检查您的import语句。确保您没有导入Android R类(即import android.R
)而不是您自己的项目R class。