Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/396.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java android版Eclipse:R的问题_Java_Android_Eclipse - Fatal编程技术网

Java android版Eclipse:R的问题

Java android版Eclipse:R的问题,java,android,eclipse,Java,Android,Eclipse,我正在尝试做一个定位应用程序,现在正处于故障排除阶段。我只剩下最后两个问题了,它们都和R有关。它表示main不是一个字段,或者无法解析,并显示相同的消息,但使用mapview而不是main。下面是我的导入和问题所在的代码行 代码: 进口: import android.R; import android.R.layout; import android.R.id; import android.location.Location; import andro

我正在尝试做一个定位应用程序,现在正处于故障排除阶段。我只剩下最后两个问题了,它们都和R有关。它表示main不是一个字段,或者无法解析,并显示相同的消息,但使用mapview而不是main。下面是我的导入和问题所在的代码行

代码:

进口:

    import android.R;
    import android.R.layout;
    import android.R.id;
    import android.location.Location;
    import android.location.LocationListener;
    import android.location.LocationManager;
    import android.os.Bundle;
    import android.widget.Toast;

    import com.google.android.maps.GeoPoint;
    import com.google.android.maps.MapActivity;
    import com.google.android.maps.MapController;
    import com.google.android.maps.MapView;
我什么都试过了。我知道人们一直在说要去掉android.R,但是在jar文件中可以找到R.layout和R.id。我右键单击了文件夹并验证了代码。我已经去项目/清洁并完成了那项工作。不走运。请帮忙?这是我的第一篇文章,如果格式不对,我很抱歉。我提前感谢你给我的任何帮助。 这是我的main.xml

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        >
    <TextView android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="Waiting for location..."
        android:id="@+id/lblLocationInfo"
    />
    <com.google.android.maps.MapView
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/mapview"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:clickable="true"
        android:apiKey="0vFrUOhHMkbahT9zXqiz_DuNVWfPqlEyqcO8ftg"
    />
    </LinearLayout>

尝试删除该行:

import android.R;
然后执行Build Clean,这样可以解决问题。

尝试删除该行:

import android.R;

然后进行编译清理,这可以解决问题。

R.java
这是一个自行生成的文件,您需要重新编译它才能生成,忽略警告并“编译清理”您的文件

R.java
这是一个自行生成的文件,您需要重新编译它才能生成,忽略警告并“编译清理”您的文件

这可能与您的项目设置有关。当我创建一个新项目时,我通常做的是设置“订单和导出”选项。这样,您就不必导入任何R.*包


在Eclipse中,右键单击您的项目,转到
属性->Java构建路径->排序并导出
。只需确保您的projectname/gen文件夹位于您的projectname/src文件夹上方。

这可能与您的项目设置有关。当我创建一个新项目时,我通常做的是设置“订单和导出”选项。这样,您就不必导入任何R.*包


在Eclipse中,右键单击您的项目,转到
属性->Java构建路径->排序并导出
。只需确保yourprojectname/gen文件夹位于yourprojectname/src文件夹上方。

除非您使用的是来自android的资源,否则您不需要这些行

import android.R; 
import android.R.Id;
import android.R.layout;
删除这些行

R正在解析为androids R,而不是
com.yourpack.yourproject.R

如果不需要,请删除导入。如果您需要在代码中显式显示。前

ImageView.setDrawable(android.R.ic_menu_search); //uses an android resource

findViewById(R.id.mapView); //uses your resource file

setContentView(R.layout.activity_main); // must have an activity_main.xml file in YourProject/res/layout
编辑:

对以下代码的更改:

//import android.R;
//import android.R.layout;    //comment or delete these lines
//import android.R.id;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.widget.Toast;

import com.google.android.maps.GeoPoint;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapController;
import com.google.android.maps.MapView;

setContentView(R.layout.activity_main);  //changed main to activity_main
mapview = (MapView)findViewById(R.id.mapview);
编辑2

在MainActivity.java的最顶端应该有一行,以
package
开头,该行的其余部分怎么说


在您的AndroidManifest.xml中还有一个程序包条目,它说了什么?

除非您使用的是来自android的资源,否则您不需要这些行

import android.R; 
import android.R.Id;
import android.R.layout;
删除这些行

R正在解析为androids R,而不是
com.yourpack.yourproject.R

如果不需要,请删除导入。如果您需要在代码中显式显示。前

ImageView.setDrawable(android.R.ic_menu_search); //uses an android resource

findViewById(R.id.mapView); //uses your resource file

setContentView(R.layout.activity_main); // must have an activity_main.xml file in YourProject/res/layout
编辑:

对以下代码的更改:

//import android.R;
//import android.R.layout;    //comment or delete these lines
//import android.R.id;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.widget.Toast;

import com.google.android.maps.GeoPoint;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapController;
import com.google.android.maps.MapView;

setContentView(R.layout.activity_main);  //changed main to activity_main
mapview = (MapView)findViewById(R.id.mapview);
编辑2

在MainActivity.java的最顶端应该有一行,以
package
开头,该行的其余部分怎么说



在您的AndroidManifest.xml中还有一个程序包条目,上面写着什么?

您能发布main.xml吗?您也在清单应用程序标记中添加了此项:
我已经添加了,现在我将添加main.xml。您可以发布main.xml吗?您还在清单应用程序标记中添加了这个:
我已经添加了,现在我将添加main.xml。我是编程新手……这几乎毫无意义。你能解释一下这是什么意思吗?没问题我更新了答案。。。安卓拥有自己的资源。如果你从删除我建议的3行开始,然后做一个清理和构建,看看这会让你得到什么。啊,好的,这是有意义的。我删除了这些行,但仍然有这两个错误。在您的项目中,res/layout下有main.xml文件吗?是的,有。activity_main.xml我是编程新手……这几乎毫无意义。你能解释一下这是什么意思吗?没问题我更新了答案。。。安卓拥有自己的资源。如果你从删除我建议的3行开始,然后做一个清理和构建,看看这会让你得到什么。啊,好的,这是有意义的。我删除了这些行,但仍然有这两个错误。在您的项目中,res/layout下有main.xml文件吗?是的,有。activity_main.xmlOk!我一定会试试的。这到底能做什么呢?正如其他人已经提到的,当您进行项目构建时,R.java文件是自动生成的。订单和导出基本上设置了项目依赖项。你可以在这里了解更多。非常感谢你。我来看看这些。好的!我一定会试试的。这到底能做什么呢?正如其他人已经提到的,当您进行项目构建时,R.java文件是自动生成的。订单和导出基本上设置了项目依赖项。你可以在这里了解更多。非常感谢你。我来看看这些。