fuubo 怎么看qq特别关注怎么看

6764人阅读
Android Notes(22)
能完成这个实例,感谢Github上的开源的UI组件,本项目所用到的开源组件:
UI组件:ActionBarSherlock,SlidingMenu,PullToRefresh
其他框架:Afinal (使用这个框架做图片缓存, 能很好的解决OOM的问题),fastjson
(解析json)
tip: 上面的包 google 百度都很容易找到
很多同学说下载的源码不能用,因为我项目用到了上面三个UI组件,源码里面是没有的,需要你们自己去github下载,集成进去。
首先声明,提供的源码完成度不高,只是简单的模仿了Fuubo主界面的UI,功能上也只做了首页的部分,Fuubo的SmartPanel 等等特性都没有做,勿喷。
简单解析下 Fuubo 的UI实现:
1. 最困惑的一点是Fuubo怎么做到适配MX2 Smartbar的,最后反编译Fuubo找到了答案,Fuubo采用的方式是actionbar.hide()来让魅族的Smartbar隐藏,然后headerbar看上去是google的Actionbar,其实是自己绘制的Actionbar。
2. 其他的左右侧栏菜单,下拉刷新 github上都有开源的组件 拿来用就行了。另外Fuubo还使用了&ListViewAnimations和&NineOldAndroids这两个开源组件。
tip:最新去Smartbar方法:/gavinliu/SmartBarUtility
简单说说新浪微博OAuth 2.0授权:
1. 浏览器请求一个授权地址
2. 输入帐号 密码
3. 然后新浪会重定向到一个地址
4.&你去解析这个地址,地址里面有access_token等我们需要的数据
虽然新浪SDK里面提供了个授权的界面,但是很明显不能满足我们的要求,所以我们得自己写这个实现。
这部分代码主要是在&com.gavin.toobo.ui.OauthActivity&
& &&授权地址的格式:
/oauth2/authorize?
client_id=[id]&
redirect_uri=[重定向地址]&
response_type=token&display=mobile
& &&通过对&WebView 进行 setWebViewClient(); 操作可以监听到浏览器加载一个页面的生命周期进行监听
public void onCreate(Bundle savedInstanceState) {
webView.setWebViewClient(new WeiboWebViewClient());
webView.loadUrl(url);
private class WeiboWebViewClient extends WebViewClient {
public void onPageStarted(WebView view, String url, Bitmap favicon) {
// 如果是访问的是我们重定向的 url 则表示授权成功,进行解析
if (url.startsWith(getString(R.string.sina_redirect_uri))) {
// 解析url
handleSinaRedirectUrl(view, url);
// 停止浏览器的加载
view.stopLoading();
view.loadUrl(&about:blank&);
super.onPageStarted(view, url, favicon);
private void handleSinaRedirectUrl(WebView view, String url) {
// 新浪sdk中提供了解析的方法,直接返回一个bundle对象
Bundle values = Utility.parseUrl(url);
String error = values.getString(&error&);
String error_code = values.getString(&error_code&);
if (error == null && error_code == null) {
Toast.makeText(this, &授权成功&, Toast.LENGTH_SHORT).show();
String accessToken = values.getString(&access_token&);
String expires_in = values.getString(&expires_in&);
Oauth2AccessToken token = new Oauth2AccessToken(accessToken, expires_in);
AccessTokenKeeper.keepAccessToken(this, token);
} else if (error.equals(&access_denied&)) {
Toast.makeText(this, &用户或授权服务器拒绝授予数据访问权限&, Toast.LENGTH_SHORT).show();
Toast.makeText(this, &授权异常&, Toast.LENGTH_SHORT).show();
UI解析:自定义Actionbar
和Fuubo不一样,我的解决办法相对简陋一点,我是定义了一个 actionbar.xml 的布局文件,然后需要用到actionbar的地方都&include layout=&@layout/actionbar& /&
UI解析:左右滑动的侧栏(SlidingMenu)
这里部分代码主要在:com.gavin.toobo.ui.TooboActivity
(如果之前没使用过SlidingMenu,建议把github上的例子程序看看)
UI解析:下拉刷新(PullToRefresh)
这里部分代码主要在:com.gavin.toobo.ui.HomeFragment
(如果之前没使用过PullToRefresh,建议把github上的例子程序看看)
源码下载:
tips:需要你在&com.gavin.toobo.ui.LoginActivity 里面修改授权地址,把id修改成你自己的客户端的id
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:74803次
积分:1256
积分:1256
排名:千里之外
原创:46篇
评论:35条
文章:16篇
阅读:33620
文章:14篇
阅读:15463分享给朋友:通用代码: <input id="link4" type="text" class="form_input form_input_s" value="" />复 制flash地址: 复 制html代码: <input type="text" class="form_input form_input_s" id="link3" value="" />复 制分享视频到站外获取收益&&手机扫码分享视频二维码2小时内有效浩益娃-我的xt912的流畅性,其中fuubo最好,腾讯微博最差下载至电脑扫码用手机看用或微信扫码在手机上继续观看二维码2小时内有效浩益娃-我的xt912的流畅性,其中fuubo最好,腾讯微博最差扫码用手机继续看用或微信扫码在手机上继续观看二维码2小时内有效,扫码后可分享给好友没有优酷APP?立即下载请根据您的设备选择下载版本
药品服务许可证(京)-经营- 节目制作经营许可证京字670号 请使用者仔细阅读优酷、、Copyright(C)2017 优酷
版权所有不良信息举报电话:}

我要回帖

更多关于 怎么看特别关注 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信