wenju
wenju
  • 发布:2015-07-24 19:35
  • 更新:2015-07-24 19:35
  • 阅读:7663

【技术分享】原生actionsheet集成到原生项目中去的大坑~~~~(>_<)~~~~

分类:5+ SDK

actionsheet 底部弹出菜单;

第一种:H5模式的actionsheet
优点: 可通过css自由定制展现样式
缺点: 1.不支持覆盖顶部状态栏; 2.不支持跨webview的遮罩; 3.在有map等原生组件时,容易被遮挡

第二种:5 runtime封装的原生actionsheet
优点: 支持覆盖顶部状态栏,支持跨webview的遮罩,有原生组件也会在顶层;
缺点 不支持定义样式 (集成到原生可通过修改res的资源文件更改样式)

我想着现在的项目是HB做好html集成到原生Android项目去的,
那就选择用第二种吧,关键是写法超简单!

plus.nativeUI.actionSheet({  
        cancel: "取消",  
        buttons: [{  
            title: "拍照"  
        }, {  
            title: "相册"  
        }]  
    }, function(e) {  
        var index = e.index;  
        switch (index) { //case 0: 取消  
            case 1: //拍照  

                break;  
            case 2: //相册  

                break;  
        }  
    });

这个代码在HBuilder运行是正常的,效果如下

但是集成到原生咋就没有任何反应了呢!!
认真看官方文档也没有发觉要特别注意的地方
http://www.html5plus.org/doc/zh_cn/nativeUI.html#plus.nativeUI.actionSheet
然后检查配置文件,检查权限,检查集成的jar包 ,换手机调 ,,,总之一顿折腾..还是没有反应..

下载了最新的Android集成SDK,发现了个txt文件,写了这么个重要提示:

这个是什么意思呢??
1.RInformation.java的包名要改成啥样?

  1. ActionSheet哪个文件包名又不能改了?
  2. res目录下这么多图片布局资源,要拷的哪些?

好坑哇~~(>_<)~~
继续调半天:功夫不负有心人,调好了
(发誓集成到原生的actionsheet再也不用第二种了 唉 html写法简单,但是到原生要导入这么多东西):


最后记得导包:
nativeui.jar

1 关注 分享
蔡繁荣

要回复文章请先登录注册

1***@qq.com

1***@qq.com

坑真多
2017-06-22 16:05
1***@qq.com

1***@qq.com

确实是坑
2017-04-19 09:55
秋天无风

秋天无风

可以自己作一个页面来用webview弹出
http://ask.dcloud.net.cn/article/234?item_id=4396
2016-07-08 16:25
stock2

stock2

是呀,都说文档问题,而且用的时候 很多人都要填坑,有时气的不行啊
2015-07-24 20:42
蔡繁荣

蔡繁荣

虽然我没看懂,但还是支持下,谁叫我是小白呢~~~~(>_<)~~~~
2015-07-24 20:31
wenju

wenju (作者)

小小的吐槽下,,官方文档对小白来说确实有点坑,,谁叫你是小白呢...~~~~(>_<)~~~~
2015-07-24 19:39