id后r.java文件没有id_关于java:R.id无法解析

本问题已经有最佳答案,请猛点这里访问。

所以我从谷歌的Android网站上复制了这个教程的例子,我得到一个错误,即R.id无法解决。

这是我的Java文件

package com.TestApp.HelloWebView;

import android.app.Activity;

import android.os.Bundle;

import android.webkit.WebView;

public class HelloWebView extends Activity {

WebView mWebView;

/** Called when the activity is first created. */

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

mWebView = (WebView) findViewById(R.id.webview);

mWebView.getSettings().setJavaScriptEnabled(true);

mWebView.loadUrl("http://www.google.com");

}

}

这是我的res/layout/main.xml

android:layout_width="fill_parent"

android:layout_height="fill_parent"/>

你必须导入你的R类

import com.TestApp.HelloWebView.R;

此外,在发布需求时,您必须为布局使用命名空间。

?xml version="1.0" encoding="utf-8"?>

android:id="@+id/webview"

android:layout_width="fill_parent"

android:layout_height="fill_parent"/>

从新的Android SDK开始,没有必要显式导入com.TestApp.R。 Eclipse会自动解析它。

我更新Android SDK时遇到了同样的问题。突然,新项目无法生成R.java文件。

导入我的R.java没有帮助,因为它没有生成

清理和构建项目也没有帮助 - / gen文件夹仍然是空的。

我发现升级后,adb服务器无法正常启动。所以手动启动它:

$ cd $ANDROID_SDK/platform-tools

$ adb start-server

然后我重新启动了Eclipse并对项目进行了清理/构建,生成了R.java文件。

是的,为我修好了。

超级好的。

@pestrella我试过键入cmd上的代码,但是说$不被识别..我在cmd上做得对吗? 或者这不适合cmd ..?

@Raf $是一个unix shell提示符。 在Windows中忽略每行的前导$。 您还需要编辑安装SDK的第一行的路径。

如果使用Eclipse,请运行一个干净的构建(Project/Clean...);这通常可以清除资源未正确编译的问题。

您是否尝试过此处列出的任何解决方案?

R无法解析 - Android错误

另外,查找您的R.java文件。它有什么错误吗?

我也有这个问题。我不能说一般的解决方案,但你可以创建一个新的工作场所并复制硬编码。在将来永远不要点击清理或构建,而是再次保存或启动eclipse。

进入main.xml文件,删除一个字符并重写它。这将再次生成R文件。

确保您没有名称中包含大写字母的任何xml文件。

我有同样的问题。

res中的所有文件名(及其所有子文件夹,包括布局)必须仅为小写。这包括图像文件,xml文件等(即使它们未在项目中的任何位置引用。)

在尝试Android初学者的tute(http://mobile.tutsplus.com/tutorials/android/android-sdk-development/)时,"R.id无法解决"错误让我感到难过。在我的例子中,它是一个android:onClick in /res/layout/main.xml。在AVD平台1.5 API级别3中似乎不支持onClick。

使用平台1.6 API更改为新的AVD,级别6删除了错误 - 还从头开始使用新的api和级别设置启动项目。对于绝对Eclipse新手(像我一样)创建一个新的AVD:

窗口 - > Android SDK和AVD Manager - >新增功能。从"目标"下拉列表中选择平台,级别编号。

还尝试删除~.android debug.keystore(发生在我身上,认为这是由于R.id问题)。真正的问题是debug.keystore超过一年!

当我试图跟随Lars Vogel的Android开发教程时,我遇到了这个问题......事实证明我的问题仅仅是因为我没有保存布局文件。保存文件后,它可以正常工作。

是的,我也在dufus俱乐部。:)

确保您的.xml文件中没有隐藏错误。

有时您可以删除strings.xml文件中重要的语句。

例如,在Vogella示例中,我收到了错误:

错误:找不到与给定名称匹配的资源(在'title'处,值为'@ string / menu_settings')。

我删除了这一行:

Settings

将其放回或删除res / menu / main.xml将解决错误。

如果你发布了你的main.xml文件,那就不对了。您必须编写xml的命名空间:

的xmlns:机器人="http://schemas.android.com/apk/res/android"

例如:

android:id="@+id/label"

android:layout_width="78dip"

android:layout_height="65dip"

android:paddingTop="4dip"

android:textSize="12dip"

android:singleLine="true"

android:ellipsize="end"

android:textColor="@color/bright_text_dark_focused"

android:gravity="center_horizontal|center_vertical" />

import com.TestApp.R;

R丢失后不被接受。

我的Eclipse现在每次"清理"时自动创建一个新的"res"文件夹。是的,我的项目文件夹下直接有两个名为"res"的文件夹。自动创建的是空的。仍然找到字符串值。 Eclipse报告没有"R无法解析"之外的其他错误。

找到了!我设法让我的第一个android项目导入Eclipse!

之前我总是在项目的属性 - Java构建路径 - 库选项卡下找到"无法找到系统库",一旦发生它就无法纠正它。结果是导入的任何东西都无法解决任何导入语句。

在这种情况下,我在导入之前将JDK合规性级别从1.6更改为1.5(之后为时已晚,无法修复)。它必须从Window - Preferences - Java - Compiler完成(之前我认为只有通过右键单击已导入的项目才能使用此选项)。然后右键单击每个项目并将Properties - Android设置为合适的Target(上面的错误,eclipse会忽略任何选择)。然后,我甚至可以改回JDK合规级别1.6。

因此,通常,在导入之前更改JDK合规性级别可能会有所帮助。

删除项目时,请始终选中"是否确定"对话框中的"删除磁盘上的项目内容(无法撤消)"复选框。否则无法重新导入项目,如果您第一次使用错误的JDK合规级别导入它,除了尝试在另一个工作区中之外,无法纠正错误。

这些是非常沮丧的Eclipse用户的体验。

是的另一个修复

我启动了模拟器。通过运行helloandroid程序,编译。

离开eclispe后又回来了,不知道哪一个修好了问题..

清理项目等没有解决它 - 我可以有2小时的生命回来!

我有同样的问题,但得到了修复

我不知道这个问题究竟是如何解决的

试试吧,它可能会有所帮助

在您的代码顶部添加此代码

import com.MyFirstApp.activities.R;

这里com.MyFirstApp.activties是我的组件名称,用你的组件名称替换它

这似乎没有为接受的答案添加任何内容。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值