1

所以在我的项目中,我使用展示视图为用户创建教程。当我将 ShowcaseView 指向任何操作栏 ID 时,结果是这样的: 在此处输入图像描述

我的问题是,是否可以让展示视图针对操作栏中的特定项目,而不仅仅是像上面显示的那样的一般概述。代码在重写的 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();

如果目前无法定位 actionbaritems,是否有另一种方法来实现教程。

4

3 回答 3

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();
于 2014-02-20T12:50:07.413 回答
1

像这样使用它

new ShowcaseView.Builder(activity)
       // .withMaterialShowcase()
     //  .setStyle(R.style.CustomShowcaseTheme3)
        .setTarget(Target.NONE)
        .setOnClickListener(this)
        //.withMaterialShowcase()
        .blockAllTouches()
        .useDecorViewAsParent() //this is the difference
        .build();

然后在操作栏中定位您的视图

于 2016-10-07T22:42:41.537 回答
0

你试过使用ActionBarSherlock吗?它支持旧的兼容性,并且有很多可用的示例。

于 2014-01-19T04:56:15.017 回答