Elevation属性不起作用且URI未注册

时间:2016-06-01 19:33:59

标签: android xml android-layout layout

我正在关注教程。说明是制作两个基本布局文件。一个将应用于所有设备,另一个将应用于第一个基本文件顶部API级别低于21的设备。对于21或更高的API级别,说明是在布局中创建一个名为layout-v21的文件夹,该文件夹具有另一个xml文件。此文件与API级别低于21的基本布局文件相同,但它具有android:elevation =“5dp”。背景也设置为不能它。我注意到布局-v21中的xml具有值xmlns的属性:android =红色表示错误。我怎样才能解决这个问题?这是海拔不正常的原因吗?我不确定我做错了什么,我只是希望高程工作,所以我可以继续前进。我试过用21,22和23运行,我得到了相同的结果。没有影子。

layout / actitvity_main.xml - >核心布局文件:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
                xmlns:tools="http://schemas.android.com/tools"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:orientation="vertical"
                tools:context=".MainActivity" android:id="@+id/relativeLayout">
                <include layout="@layout/toolbar"/>
</LinearLayout>

layout / toolbar.xml - &gt; API低于21

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
                                   android:layout_width="match_parent"
                                   android:layout_height="wrap_content"
                                   android:background="@color/colorPrimary"
                                   android:minHeight="?attr/actionBarSize">

</android.support.v7.widget.Toolbar>

layout / layout-v21 / toolbar.xml - &gt;对于21或更高的API

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
                                   android:layout_width="match_parent"
                                   android:layout_height="wrap_content"
                                   android:background="@color/colorPrimary"
                                   android:minHeight="?attr/actionBarSize"
                                   android:elevation="5dp">

</android.support.v7.widget.Toolbar>

xmns值的属性具有URI错误。

这是我的build.gradle文件。

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.2.3'
    }
}
apply plugin: 'com.android.application'

repositories {
    jcenter()
}

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.3"

    defaultConfig {
        applicationId "com.example.pluralsight"
        minSdkVersion 7
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_6
        targetCompatibility JavaVersion.VERSION_1_6
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile 'com.android.support:support-v4:24.0.0-beta1'
    compile 'com.android.support:gridlayout-v7:24.0.0-beta1'
    compile 'com.android.support:appcompat-v7:24.0.0-beta1'
    compile 'com.android.support:appcompat-v7:23.+'
    compile fileTree(dir: 'libs', include: ['*.jar'])
}

1 个答案:

答案 0 :(得分:0)

哇,我惹你生气,我发布这封信后就没想到了。检查了我的文件夹结构。文件夹布局-v21在布局内部,这就是为什么高程不起作用,我收到了URI错误。我将该文件夹移动到res并且工作正常。如此道德的故事,检查你的结构。