2014-06-27 79 views
6

我正嘗試在新SDK中使用新的活動轉換。無法使用部分L SDK功能

我想這行:

getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS); 

但問題是Window不包括FEATURE_CONTENT_TRANSITIONS

我也試過這條線:

getWindow().setExitTransition(new Explode()); 

而且Explode類不存在...

我已經把我的項目中以L SDK(安卓-L)編譯和使用新的SDK工具(20.0.0)

的build.gradle:

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 'android-L' 
    buildToolsVersion '20.0.0' 
    defaultConfig { 
     applicationId 'com.tester' 
     minSdkVersion 'L' 
     targetSdkVersion 'L' 
     versionCode 1 
     versionName '1.0' 
    } 
    buildTypes { 
     release { 
      runProguard false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
    productFlavors { 
    } 
} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    compile "com.android.support:support-v4:+" 
} 

buildscript { 
    repositories { 
     mavenCentral() 
    } 

    dependencies { 
     classpath 'com.android.tools.build:gradle:0.12.+' 
    } 
} 
+0

做您在編譯時或運行時遇到錯誤?你在哪裏執行該代碼? –

+0

我得到這個代碼作爲語法錯誤,這些類不存在。 (我正在使用Android Studio) –

+0

發佈您的build.gradle –

回答

0

好像你不包括構建路徑中的L SDK庫。 這些庫是否列爲項目的依賴項?

+0

'com.android.support:support-v4:+'是我的依賴中列出的唯一庫。 –

0

嘗試文件 - >無效緩存/重新啓動。

如果這不起作用,您可以嘗試刪除〜/ .AndroidStudioBeta(或〜/ .AndroidStudioPreview,無論您使用哪一種)。它會清除你的所有設置,以便爲此做好準備,但這解決了我的情況。

對於Mac,明確:
〜/庫/ Application Support/AndroidStudioBeta
〜/圖書館/緩存/ AndroidStudioBeta
〜/圖書館/日誌/ AndroidStudioBeta
〜/庫/首選項/ AndroidStudioBeta

+0

試過兩種解決方案,都沒有工作。我注意到了一些事情,在編輯器中,我控制點擊了'Window',所以它會帶我到'Window'類源,並且我注意到它使用了API-20級。它應該使用API​​級L,不是嗎? ? –

+0

它應該像[this](http://i.imgur.com/9JvRKJH.png)。在你的/ sdk/platforms目錄下,你有一個'android-L'文件夾嗎?也許從SDK管理器中刪除L包並重新安裝。如有必要,重複上述步驟重置高速緩存。 –

+0

我確實有'android-L'文件夾。我已經嘗試從SDK Manager重新安裝軟件包。 –