- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
如何在 MaterialDrawer 中创建自定义 DrawerItem
(1. 我需要切换 2. 我需要 bool 状态指示器)图书馆? Here MaterialDrawer 作者说,创建自定义 DrawerItem
是一项非常容易的任务,但我在这个库的文档中找不到它。
最佳答案
要实现 CustomDrawerItem
,您必须实现 IDrawerItem
接口(interface)。这定义了所有需要的方法。仔细看看 DividerDrawerItem或 SectionDrawerItem
两者都更简单一些。
public class DividerDrawerItem extends AbstractDrawerItem<DividerDrawerItem> {
@Override
public String getType() {
return "DIVIDER_ITEM";
}
@Override
@LayoutRes
public int getLayoutRes() {
return R.layout.material_drawer_item_divider;
}
@Override
public void bindView(RecyclerView.ViewHolder holder) {
Context ctx = holder.itemView.getContext();
//get our viewHolder
ViewHolder viewHolder = (ViewHolder) holder;
//set the identifier from the drawerItem here. It can be used to run tests
holder.itemView.setId(getIdentifier());
//define how the divider should look like
viewHolder.view.setClickable(false);
viewHolder.view.setEnabled(false);
viewHolder.view.setMinimumHeight(1);
//set the color for the divider
viewHolder.divider.setBackgroundColor(UIUtils.getThemeColorFromAttrOrRes(ctx, R.attr.material_drawer_divider, R.color.material_drawer_divider));
//call the onPostBindView method to trigger post bind view actions (like the listener to modify the item if required)
onPostBindView(this, holder.itemView);
}
@Override
public ViewHolderFactory getFactory() {
return new ItemFactory();
}
public static class ItemFactory implements ViewHolderFactory<ViewHolder> {
public ViewHolder factory(View v) {
return new ViewHolder(v);
}
}
private static class ViewHolder extends RecyclerView.ViewHolder {
private View view;
private View divider;
private ViewHolder(View view) {
super(view);
this.view = view;
this.divider = view.findViewById(R.id.material_drawer_divider);
}
}
}
关于android - MaterialDrawer CustomDrawerItem,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32066618/
我正在使用MaterialDrawer迈克·彭茨 (Mike Penz) 的图书馆。 我制作了一个 AccountHeader,现在想知道如何添加这样的“添加帐户”按钮(见图)。是否已经提供了如何执行
我使用MaterialDrawer迈克·彭茨 (Mike Penz) 的图书馆。 在我的 OnCreate 中,配置文件从 linkedHashMap 添加到抽屉中。选择配置文件后,新选择的配置文件将
我正在尝试弄清楚如何通过https://github.com/mikepenz/MaterialDrawer自定义MaterialDrawer 目前宽度太大。我想用更大的图标缩小宽度以覆盖空间并更改背
这个问题非常具体 https://github.com/mikepenz/MaterialDrawer定制。 我需要按如下方式自定义我的帐户标题: 任何时候都只有一个帐户 点击标题(整个区域)应该给我
所以我尝试为我的 Android 应用构建一个 MaterialDrawer 侧边栏。但是当抽屉打开时,我的应用程序崩溃了……有什么想法吗?我的崩溃日志如下所示: Caused by: java.la
如何在 MaterialDrawer 中创建自定义 DrawerItem(1. 我需要切换 2. 我需要 bool 状态指示器)图书馆? Here MaterialDrawer 作者说,创建自定义 D
我使用了从github下载的material drawer lib项目https://github.com/mikepenz/MaterialDrawer 按照我的代码 final Toolb
如何删除 Mikepenz Material Drawer 空间。我为配置文件菜单和抽屉项目使用了自定义布局。我没有为这些 View 设置边距或填充。我还尝试将 Activity 水平边距设置为 0。
在我的 android 应用程序中,我使用 greeDAO ORM for sqlite。所以我检索了我的类别列表: List categories = articleCategoryDao.que
我怎么放MaterialDrawer ActionBar 上方的菜单?现在,当我打开 MaterialDrawer 菜单时,我的 ActionBar 就在它上面。 CSS 中有类似 Z-index 的
我正在尝试将 mikepenz 的 Material Drawer 添加为第三方项目。我想将它添加为项目的原因(不仅仅是编译为依赖项)以便我可以根据我的要求修改抽屉的 UI。但是我无法成功同步我的 g
我使用MaterialDrawer迈克·彭茨的图书馆。 (版本6.0.0) 我的抽屉包含一个 ExpandableBadgeDrawerItem(ID=1)和一个 secondaryDrawerIte
我使用 Mike Penz 的 MaterialDrawer 并且我遇到了问题。我有 Activity (AppCompat) 和 3 Fragmnts。 Activity 包含所有 fragment
我需要构建自己的 AccountHeaderBuilder 实现。 所以我正在尝试从 MaterialDrawer 扩展一个类图书馆。在 Android Studio 中,我需要如何进行才能做到这一点
我试图以编程方式更改 StatusBar 颜色,但没有成功。我正在使用 MaterialDrawer用于创建抽屉导航的库。 尝试了我在互联网上找到的不同解决方案,但没有一个有效,状态栏总是显示 pri
我正在使用库 MaterialDrawer ( https://github.com/mikepenz/MaterialDrawer )。 我想像 Foursquare 过滤器一样使用右侧的侧边栏作为
我在 expandableItem 中显示徽章。当用户单击该项目时,我希望 expandableItem 中的徽章消失,只在子项目中显示徽章。但是在我的代码中,当我点击时,徽章消失但子项目没有显示。我
我在使用通过 BaseActivity 实现的多个 Activity (不使用 fragment )实现 MaterialDrawer(MikePenz 库)时遇到问题。另外,使用 ButterKni
我正在尝试添加此Library 但是当同步Android Studio项目时出现以下错误.. 错误:(58,13)无法解决:com.mikepenz:materialdrawer:4.3.5 我为此感
我是一名优秀的程序员,十分优秀!