sencha touch 分享到微博扩展

扩展代码:

 1 /*
 2 *分享到微博
 3 */
 4 Ext.define('ux.WeiboPicker', {
 5     extend: 'Ext.Picker',
 6     xtype: 'weiboPicker',
 7     config: {
 8         toolbar: {
 9             ui: 'light',
10             title: '分享到'
11         },
12         value: {
13             weibo: 'sinaminiblog'
14         },
15         slots: [{
16             name: 'weibo',
17             data: [{
18                 text: '新浪微博',
19                 value: 'sinaminiblog'
20             },
21             {
22                 text: '人人网',
23                 value: 'renren'
24             }]
25         }],
26         //分享到参数
27         weiboParams: null
28     },
29     /*显示分享到微博参数格式{url:url,title:title,summary:summary,publisherUuid:publisherUuid,pic:pic}
30     *url为必填项,必须为以下格式 http://www.baidu.com
31     * 具体参考http://www.bshare.cn/help/apiRedirect
32     */
33     show: function (params) {
34         this.setWeiboParams(params);
35         this.callParent(arguments);
36     },
37     //确定
38     onDoneButtonTap: function () {
39         var params = this.getWeiboParams();
40         var url = 'http://api.bshare.cn/share/' + this.getValue().weibo + '?1=1';
41         for (var item in params) {
42             var value = params[item];
43             if (item == 'url') {
44                 value = escape(value); //转码特殊符号防止url中包含参数
45             }
46             url = url + '&' + item + '=' + value; 
47         }
48         window.open(url, '_system');
49         this.endPick();
50     },
51     //取消
52     onCancelButtonTap: function () {
53         this.endPick();
54     },
55     //销毁
56     endPick: function () {
57         this.hide();
58         this.destroy();
59     }
60 });

 

使用示例:

1 var weibo = Ext.create('ux.WeiboPicker');
2 Ext.Viewport.add(weibo);
3 weibo.showWeibo({ url: 'http://www.baidu.com', title: '分享标题' });

效果图:

 

 

posted @ 2013-09-01 15:50  魔狼再世  阅读(946)  评论(0编辑  收藏  举报