我正在尝试在Android Studio中打开Android示例项目 - Navigation Drawer,但在构建它时遇到错误.
这些是重现它的步骤:
错误:(43)在'com.example.android.navigationdrawer'包中找不到属性'layoutManager'的资源标识符
Android Studio版本为 - 1.4 Beta 4
在此先感谢您的帮助.
RWI*_*WIL 25
编译器在以下位置找不到此属性activity_navigation_drawer.xml:
app:layoutManager="LinearLayoutManager"
Run Code Online (Sandbox Code Playgroud)
解决这个问题
从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"/>
Run Code Online (Sandbox Code Playgroud)按下Gradle Sync按钮
在NavigationDrawerActivity,在OnCreate()中添加以下2行代码;
LinearLayoutManager mLinearLayoutmanager = new LinearLayoutManager(this);
mDrawerList.setLayoutManager(mLinearLayoutmanager);
Run Code Online (Sandbox Code Playgroud)所以你的代码现在看起来像这样:
@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);
....
Run Code Online (Sandbox Code Playgroud)
祝好运
编辑:原始xml代码不再起作用的原因很可能是xmlns:app="http://schemas.android.com/apk/res-auto"命名空间不再支持该layoutManager属性.
有关命名空间的更多信息,请访问:https://stackoverflow.com/a/26692768/3708094
| 归档时间: |
|
| 查看次数: |
9526 次 |
| 最近记录: |