簡體   English   中英

使用Android示例項目時出現錯誤'找不到資源標識符'

[英]Error 'No resource identifier found' with Android sample project

我正在嘗試在Android Studio中打開Android示例項目 - Navigation Drawer,但在構建它時遇到錯誤。

這些是重現它的步驟:

  1. 在Android Studio歡迎頁面中,選擇導入Android代碼示例
  2. 搜索導航抽屜 ,選擇它並單擊“下一步”
  3. 指定項目位置並單擊“完成”

錯誤:(43)在'com.example.android.navigationdrawer'包中找不到屬性'layoutManager'的資源標識符

Android Studio版本為 - 1.4 Beta 4

在此先感謝您的幫助。

編譯器無法在activity_navigation_drawer.xml找到此屬性:

app:layoutManager="LinearLayoutManager"

解決這個問題

  1. 從XML中刪除此屬性,以便您的Recyclerview如下所示:

     <android.support.v7.widget.RecyclerView android:id="@+id/left_drawer" android:scrollbars="vertical" android:layout_width="240dp" android:layout_height="match_parent" android:layout_gravity="left|start" android:choiceMode="singleChoice" android:divider="@null"/> 
  2. 按下Gradle Sync按鈕

  3. NavigationDrawerActivity ,在OnCreate()中添加以下兩行代碼;

     LinearLayoutManager mLinearLayoutmanager = new LinearLayoutManager(this); mDrawerList.setLayoutManager(mLinearLayoutmanager); 

所以你的代碼現在看起來像這樣:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_navigation_drawer);

    mTitle = mDrawerTitle = getTitle();
    mPlanetTitles = getResources().getStringArray(R.array.planets_array);
    mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
    mDrawerList = (RecyclerView) findViewById(R.id.left_drawer);

    LinearLayoutManager mLinearLayoutmanager = new LinearLayoutManager(this);
    mDrawerList.setLayoutManager(mLinearLayoutmanager);
    ....

祝好運

編輯 :原始xml代碼不再起作用的原因很可能是xmlns:app="http://schemas.android.com/apk/res-auto"命名空間不再支持layoutManager屬性。

有關命名空間的更多信息,請訪問: https//stackoverflow.com/a/26692768/3708094

您當然可以通過xml定義LayoutManagers等。 這是使用本機GridLayoutManager的示例:

<android.support.v7.widget.RecyclerView
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/posters_recycler_view"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_alignParentTop="true"
    android:orientation="vertical"
    app:layoutManager="android.support.v7.widget.GridLayoutManager"
    app:reverseLayout="false"
    app:spanCount="3"
    app:stackFromEnd="false" />

如果要使用自定義LayoutManager,請遵循此處定義的規則:

R.attr.html#的layoutManager

只需將build.gradle文件(模塊)升級到最新版本,我就試了一下,現在一切正常。

引用:

https://github.com/googlesamples/android-NavigationDrawer/issues/9

你確定gradle解決了所有依賴關系嗎? 當偶爾從依賴項中刪除recyclerview支持庫時,我遇到了同樣的問題:

  compile 'com.android.support:recyclerview-v7:25.0.1'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM