简单实现3d touch

作者: 浪漫晨风 | 来源:发表于2018-05-31 14:46 被阅读42次

在应用图标上显示的快捷方式,该快捷方式可以点击进入Activity,长按拖动创建一个在Launcher上的图标。有点类似于苹果的3d touch,现在市场上已经是有很多应用增加了这项功能,如:印象笔记、支付宝、哔哩哔哩、IT之家、知乎、美团。于是自己怀着好奇,用动态代码也实现了一下,

1.设置ShortcutManager

@RequiresApi(api = Build.VERSION_CODES.N_MR1)
    private void setShortcutManager() {
        ShortcutManager mShortcutManager = (ShortcutManager) getSystemService(Context.SHORTCUT_SERVICE);
        //方便扩展,写成数组的方式
        ShortcutInfo[] mShortcutInfos = new ShortcutInfo[]{getOrdinaryShortcut()};
        mShortcutManager.addDynamicShortcuts(Arrays.asList(mShortcutInfos));
    }

2.构造快捷方式信息

 @RequiresApi(api = Build.VERSION_CODES.N_MR1)
    private ShortcutInfo getOrdinaryShortcut() {
        ShortcutInfo ordinary = new ShortcutInfo.Builder(this, "guahao")
                .setIntents(new Intent[]{new Intent(Intent.ACTION_VIEW).
                        setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK)
                        .setClass(this, MainActivity.class),
                        new Intent(Intent.ACTION_VIEW).setClass(this,
                                OrdinaryYuYueActivity.class)}
                )
                .setShortLabel(getResources().getString(R.string.guahao))
                .setLongLabel(getResources().getString(R.string.guahao))
                .setIcon(Icon.createWithResource(this, R.mipmap.push))
                .build();
        return ordinary;
    }

3.判断版本号,在合适的地方调用

  if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N_MR1) {
            setShortcutManager();
        }

最终效果如图:


QQ图片20180531143129.jpg

相关文章

  • 3D Touch

    iOS之实现3D Touch跟着官方文档学习3D Touch

  • 3D touch

    3D Touch 简单应用 - 简书 3D Touch学习笔记 - 简书

  • 关于3D Touch 的基本使用

    我对于3d touch 这个功能也没有什么研究,只是项目里面要求实现一个简单的touch 功能! touch AP...

  • 3D Touch 具体使用

    实现参考3D Touch例子

  • 简单实现3d touch

    在应用图标上显示的快捷方式,该快捷方式可以点击进入Activity,长按拖动创建一个在Launcher上的图标。有...

  • 3D Touch简单实现

    3D Touch功能概览 一、Home Screen Quick Actions开发 1、静态添加 在info.p...

  • 3D Touch 进阶

    说是进阶,其实是把未讲完的3D Touch用法讲完。除了最简单的Qucik Action,3D Touch最常见的...

  • 3D Touch 开发

    一. 3D Touch开发 官方文档给出的应用介绍主要有两块: 简单来说 3d touch 就是通过区分轻按和...

  • #3DTouch

    3D touch介绍 3D touch 是ios9+、iphone6s+的新功能,简单的说3Dtouch就是用力按...

  • iOS 实现3D Touch 并 通过模拟器进行调试

    一、3D Touch 的实现: 1.在- (BOOL)application:(UIApplication *)a...

网友评论

    本文标题:简单实现3d touch

    本文链接:https://www.haomeiwen.com/subject/vmuqsftx.html