当前位置: 代码迷 >> Android >> 新手:setContentView(R.layout.activity_main);有关问题
  详细解决方案

新手:setContentView(R.layout.activity_main);有关问题

热度:67   发布时间:2016-05-01 10:38:28.0
新手:setContentView(R.layout.activity_main);问题
今天搭好android开发环境,做一个hello world程序
eclipse生成的代码居然有错:
MainActivity.java

package com.jingtai.helloworld;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;

public class MainActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.activity_main, menu);
        return true;
    }
}



说是:setContentView(R.layout.activity_main);这一行中
R cannot be resolved to a varialbel

想不明白,eclipse生成的框架代码怎么会有错误呢?真是打击人啊

------解决方案--------------------
因为R文件没有生成出来,也可能是没有引入R文件。
你可以clean一下你的工程。菜单栏点project,然后点clean。
如果还是不行就是环境有问题。你用的是最新的api17吗?请确保adt是22.并且需要把android- SDK build tools 升到最新版本 17.
------解决方案--------------------
clean下工程试试
又或者你没有编译导致R没有生成
------解决方案--------------------
clean一下,如果还是有问题,可能是工程中其他地方有错,导致不能自动生成R.java
------解决方案--------------------
重新在创建一个新的工程,看看好没好,如果还是不行,就是搭建的环境有问题。
------解决方案--------------------
引用:
因为R文件没有生成出来,也可能是没有引入R文件。
你可以clean一下你的工程。菜单栏点project,然后点clean。
如果还是不行就是环境有问题。你用的是最新的api17吗?请确保adt是22.并且需要把android- SDK build tools 升到最新版本 17.


Clean--->Rebuild

另外也可以手动导入R所在的包。。
------解决方案--------------------
上面已经有人说的,但是还说的不全,你可以先删掉gen文件夹然后clean一下,不行的话就是有错误,可能adt版本不对,自己看一下console里面有没报错,有的话一般是版本不对 或者key过期什么的,版本不对的话就重新选一下版本,要是key过期了你再问吧,对了删了gen后有时候不会自动给你生成,你随便打开一个xml改一下保存,就会给你生成了