我有另一个活动,其布局有RelativeLayout,TextViews和ImageView ......这里没有问题。
使用下面的这个其他Activity我有很多TextViews和RelativeLayout。当我添加Imageview时,收到以下错误:
错误:(190)找不到属性'srcCompat'的资源标识符 package'com.example.ftonyan.userposts'错误:(190)没有资源 在包中找到属性'srcCompat'的标识符 'com.example.ftonyan.userposts'错误:任务执行失败 ':应用程序:processDebugResources'。
com.android.ide.common.process.ProcessException:无法执行aapt
在添加imageview之前,此问题活动的layout.xml的顶部部分如下所示(代码在模拟器上编译并运行)
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin">
将图像视图添加到调色板后,以下2行为红色(注意系统添加了第2行)。代码不再编译。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
下面是我的Activity layout.xml。此布局中大约有19个textView。为简洁起见,我没有将所有这些都包括在内。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin">
<TextView
android:id="@+id/lblAddressees"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentStart="true"
android:layout_below="@+id/lblNick"
android:layout_toStartOf="@+id/nickName"
android:text="Addressees:" />
<Button
android:id="@+id/goBack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentEnd="true"
android:background="@android:color/transparent"
android:text="back" />
<ImageView
android:id="@+id/imageView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/button6"
android:layout_centerHorizontal="true"
android:layout_marginBottom="87dp"
android:srcCompat="@mipmap/ic_launcher" />
</RelativeLayout>
我在这里阅读了一些帖子,建议更改apk / res-auto行。但是,在系统添加之前,该行不在文件中。所以,不知道我应该做些什么来解决这个问题。提前致谢
答案 0 :(得分:0)
您需要为Imageview添加命名空间代码
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
命名空间'schemas.android.com/tools'用于指定Android Studio构建应用程序的选项,并且不包含在最终的应用程序包中
命名空间'schemas.android.com/apk/res-auto'用于所有自定义属性 - 在库或代码中定义。
答案 1 :(得分:0)
在项目中打开应用级build.gradle
文件,添加以下行
defaultConfig {
vectorDrawables.useSupportLibrary = true
}
并同步您的项目。那就是它。
答案 2 :(得分:0)
我明白了。我错过了这一行
tools:context="packagename.nameofAttivity">
谢谢大家
答案 3 :(得分:0)
检查这个 Android image not showing in imageview
在这篇文章中我告诉过这个--- ......你应该将srcCompat编辑为src。 src用于源和sourceCompat用于在ICS上运行的Android设备的向量可绘制文件的向后兼容性 - IceCream Sandwich。
答案 4 :(得分:0)
首先,无需添加android:srcCompat
来设置默认图像。
因为app:srcCompat
用于向后兼容支持库的向量drawable。
请尝试android:src="@mipmap/ic_launcher"
或android:background="@mipmap/ic_launcher"
。
但是,如果您想使用srcCompat
属性,则只需将android:srcCompat
更改为app:srcCompat
中的ImageView
。