所以在我的项目中,我使用showcaseview为用户创建教程。当我将ShowcaseView指向任何操作栏ID时,结果如下:
我的问题是,是否可以让showcaseview定位操作栏中的特定项目,而不仅仅是上面显示的概述。代码在重写的onCreateOptionsMenu方法中运行,并且位于活动的上下文中。以下是我目前使用的代码:
actionBarViews = new ShowcaseViews(activity);
ShowcaseView.ConfigOptions co = new ShowcaseView.ConfigOptions();
co.hideOnClickOutside = true;
actionBarViews.addView(new ItemViewProperties(R.id.sendmessage,
R.string.send_title, R.string.send_tutorial,
ShowcaseView.ITEM_ACTION_ITEM, 0, co));
actionBarViews.addView(new ItemViewProperties(R.id.tutorial_menu,
R.string.tutorial_title, R.string.tutorial_tutorial,
ShowcaseView.ITEM_ACTION_OVERFLOW, 0, co));
actionBarViews.show();
如果目前无法定位动作栏项,那么还有其他方法可以实现教程。
答案 0 :(得分:1)
这可能有点晚,但这对于找到此主题的其他用户可能会有用。我使用以下代码使用ShowCaseView
突出显示我的操作按钮 //for action button with id "ACTION_BUTTON_ID"
ShowcaseView.ConfigOptions co = new ShowcaseView.ConfigOptions();
co.showcaseId = ShowcaseView.ITEM_ACTION_ITEM;
co.hideOnClickOutside = true;
ActionItemTarget target = new ActionItemTarget(this.getActivity(),R.id.ACTION_BUTTON_ID);
final ShowcaseView sv = ShowcaseView.insertShowcaseView(target,getActivity(),R.string.instruction_title_text,R.string.instruction_details_text);
sv.show();
答案 1 :(得分:1)
像这样使用
new ShowcaseView.Builder(activity)
// .withMaterialShowcase()
// .setStyle(R.style.CustomShowcaseTheme3)
.setTarget(Target.NONE)
.setOnClickListener(this)
//.withMaterialShowcase()
.blockAllTouches()
.useDecorViewAsParent() //this is the difference
.build();
然后在操作栏中定位您的视图
答案 2 :(得分:0)
你试过使用ActionBarSherlock吗?它支持旧兼容性并且有很多可用的示例。