Java:包R不存在[重复]
Posted
技术标签:
【中文标题】Java:包R不存在[重复]【英文标题】:Java:package R does not exist [duplicate] 【发布时间】:2016-09-29 20:29:09 【问题描述】:我正在创建一个简单的事实应用程序,并已彻底遵循教程,但在我的主活动中收到错误无法解析符号 R。我尝试导入 mypackagename.R 但这也不起作用
我的包名是: 包 com.example.saarikakumar.myapplication;
我的主要活动代码如下:
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.MotionEvent;
import android.view.View;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.example.saarikakumar.myapplication.android.R;
public class MainActivity extends AppCompatActivity
TextView factBox;
LinearLayout bg;
Facts factHolder = new Facts();
Backgrounds backs = new Backgrounds();
@Override
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
factBox = (TextView) findViewById(R.id.factTextbox);
bg = (LinearLayout) findViewById(R.id.background);
bg.setBackgroundColor(getResources().getColor(backs.getbackground()));
bg.setOnTouchListener(new OnSwipeTouchListener(this)
public void onSwipeTop()
public void onSwipeRight()
prev();
public void onSwipeLeft()
next();
public void onSwipeBottom()
public boolean onTouch(View v, MotionEvent event)
return gestureDetector.onTouchEvent(event);
);
private void prev()
factBox.setText(factHolder.prevFact());
bg.setBackgroundColor(getResources().getColor(backs.getbackground()));
private void next()
factBox.setText(factHolder.nextFact());
bg.setBackgroundColor(getResources().getColor(backs.getbackground()));
@Override
public boolean onCreateOptionsMenu(Menu menu)
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
@Override
public boolean onOptionsItemSelected(MenuItem item)
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings)
return true;
return super.onOptionsItemSelected(item);
public void genFact(View view)
next();
【问题讨论】:
如果您有第二个问题,请单独提出第二个问题。但首先要仔细检查是否有重复项。 【参考方案1】:从您的代码中删除以下给定的导入语句
import com.example.saarikakumar.myapplication.android.R;
您不必导入任何 R.java 文件。
如果你有任何错误说Cannot resolve symbol R
,那么这意味着R.java
文件没有生成,因为你的xml文件中有一些错误。所以你应该检查你的xml文件是否有错误并修复它。 R.java 文件会自动生成。
首先,看看“清理并重建”是否能帮你解决问题。
【讨论】:
检查我的更新答案@SAK 这是有道理的,我最近编辑了 color.xml 文件,也许就是这样?我可以从那里发布代码以及 android manifest xml 文件代码 不太确定我是否能够调试它..无论如何只是发布它..可能其他人可以帮助你.. 实际上我的 styles.xml 文件给了我错误:不允许的字符串类型(在 'colorAccent' 处带有值'...')。它不会让我发布代码,因为它太长了 请分享引发此错误的代码..以上是关于Java:包R不存在[重复]的主要内容,如果未能解决你的问题,请参考以下文章
Java 11 包 javax.xml.bind 不存在 [重复]