我收到一个奇怪的错误eclipse说"R不能解析为变量">
我不知道该怎么办。
我必须邮寄我的清单文件吗?我的xml文件?
我试过:清洁项目更新AVD更新SDK
这是我的代码:
//package
//imports
public class MainActivity extends Activity implements OnClickListener{
public Handler timer = new Handler();
public int counter = 0;
//vars
TextView mTextView;
ImageButton finishhimbutton;
ImageButton resetbutton;
//images
public ImageView jb1;
public ImageView jb2;
public ImageView jb3;
public ImageView jb4;
public ImageView jb5;
public ImageView jb6;
TextView txtCount;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//define
txtCount = (TextView)findViewById(R.id.timer);
txtCount.setText(String.valueOf(counter));
jb1 = (ImageView) findViewById(R.id.JB1);
jb2 = (ImageView) findViewById(R.id.JB2);
jb3 = (ImageView) findViewById(R.id.JB3);
jb4 = (ImageView) findViewById(R.id.JB4);
jb5 = (ImageView) findViewById(R.id.JB5);
jb6 = (ImageView) findViewById(R.id.JB6);
//click button
finishhimbutton = (ImageButton) findViewById(R.id.finishhim);
resetbutton = (ImageButton) findViewById(R.id.reserbutton);
timer = new Handler();
final Runnable hMyTimeTask = new Runnable() {
public void run() {
if (counter < 49) {
counter = 0;
txtCount.setText(String.valueOf(counter));
jb1.setVisibility(ImageView.VISIBLE);
jb2.setVisibility(ImageView.INVISIBLE);
jb3.setVisibility(ImageView.INVISIBLE);
jb4.setVisibility(ImageView.INVISIBLE);
jb5.setVisibility(ImageView.INVISIBLE);
jb6.setVisibility(ImageView.INVISIBLE);
}
else if (counter > 50) {
Toast.makeText(MainActivity.this, "WINNER", Toast.LENGTH_SHORT).show();
}
}
};
finishhimbutton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (counter == 1) {
timer.removeCallbacks(hMyTimeTask);
timer.postDelayed(hMyTimeTask, 4000);
}
switch(counter){
//case's
case 1:
counter++;
txtCount.setText(String.valueOf(counter));
jb1.setVisibility(ImageView.VISIBLE);
jb2.setVisibility(ImageView.INVISIBLE);
jb3.setVisibility(ImageView.INVISIBLE);
jb4.setVisibility(ImageView.INVISIBLE);
jb5.setVisibility(ImageView.INVISIBLE);
jb6.setVisibility(ImageView.INVISIBLE);
break;
//................and more case's
//there are more case's
}
}
}
);
//reset button
resetbutton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
counter = 0;
txtCount.setText(String.valueOf(counter));
jb1.setVisibility(ImageView.VISIBLE);
jb2.setVisibility(ImageView.INVISIBLE);
jb3.setVisibility(ImageView.INVISIBLE);
jb4.setVisibility(ImageView.INVISIBLE);
jb5.setVisibility(ImageView.INVISIBLE);
jb6.setVisibility(ImageView.INVISIBLE);
Intent screen = new Intent(MainActivity.this, startscreen.class);
MainActivity.this.startActivity(screen);
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public void onClick(View v) {
}
}
检查是否导入android。R并检查xml是否有错误并重建所有项目
- 关闭Eclipse并打开您的Workspace目录
- 查找名为".metadata"的文件夹,然后删除该文件夹
错误应该消失:)
我建议您在打开新报告之前搜索Stack Overflow。
这将有所帮助:
"R不能解析为变量";?
1.删除import android.R;
和主项目导入。
2.然后转到错误变量并导入您的项目引用。