我在一个活动中有一个imageview,我试图用它来显示列表中的第一个图像(当从图库中选择另一个图像时将切换它)
<ImageView
android:id="@+id/imageView1"
android:layout_marginTop="100dp"
android:layout_width="250dp"
android:layout_gravity="center_horizontal"
android:layout_height="250dp"
android:src="@drawable/image1" />
现在我的R.java有以下代码:
public static final class drawable {
public static final int ic_launcher=0x7f020000;
public static Integer image1;
public static Integer image2;
public static Integer image3;
public static Integer image4;
public static Integer image5;
public static Integer image6;
public static Integer image7;
public static Integer image8;
}
但是eclipse不喜欢这个,我无法启动应用程序。
同样,我有一个MyGallery类和一个负责操作这些图像的适配器,但是适配器由于某种原因不能“看到”这些变量(尽管它们是公共静态的)。
答案 0 :(得分:0)
Integer是一个类,int是基本类型。将整数更改为int。
答案 1 :(得分:0)
SDK将为您生成R.java。无需手动编辑。
如果您没有编辑R.java,那么您需要构建项目。目前,所有变量都没有分配给任何值。
关于SDK自动化R.java文件:
如果将图像导入/res/..
目录,SDK将自动生成静态可绘制类。
然后在XML中,您可以指定可绘制项的源。如果我导入了一张图片,比如myImage.png
,那么以下代码就是合适的:
<ImageView
android:id="@+id/imageViewExample"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/myImage" />
答案 2 :(得分:0)
sdk为你生成一个id,而id是一种访问资源的方式,因此编辑它是没有意义的,你不应该这样做。重建您的项目,然后SDK将生成ID。只需在android:id="@+id/<idName>"
中指定和ID名称,如果您想在ImageView
中使用src
属性指定图片,则sdk将完成其工作,如下所示:
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/image" />