Android新浪星座运势程序开发
2011-10-09 21:44
267 查看
有的时候无聊会到新浪网看新浪星座运势,准备自己也写个Android客户端的。首先打算很简单,只显示当天的星座运势。后面在可以在加上周,月,年等。
开发的样式大概是这样的,上半部分的左右两边有两个button可以用来切换星座,当然也可以通过触屏左右滑动。两个button之间显示星座的一些信息,如:星座名字,星座所处的日期范围,运势有效的时间,健康指数,商谈指数,幸运颜色,速配星座。下半部分显示星座运势的详细解释。
上一张自己做好的效果图:
此应用程序很简单,主要是根据星座运势的url获取网页的内容,分析返回的源代码,截取需要的字符串。应用程序所显示的所有文字均来自新浪运势。下面是获取文字的主要代码:
开发的样式大概是这样的,上半部分的左右两边有两个button可以用来切换星座,当然也可以通过触屏左右滑动。两个button之间显示星座的一些信息,如:星座名字,星座所处的日期范围,运势有效的时间,健康指数,商谈指数,幸运颜色,速配星座。下半部分显示星座运势的详细解释。
上一张自己做好的效果图:
此应用程序很简单,主要是根据星座运势的url获取网页的内容,分析返回的源代码,截取需要的字符串。应用程序所显示的所有文字均来自新浪运势。下面是获取文字的主要代码:
try { HttpClient hc = new DefaultHttpClient(); HttpGet hg = new HttpGet(url); HttpResponse hr = hc.execute(hg); if (hr.getStatusLine().getStatusCode() == HttpStatus.SC_OK) { String strResult = EntityUtils.toString(hr.getEntity()); String str1="星座:"; String str2=""; for (int i = 0; i < strResult.length(); i++) { if (strResult.charAt(i) == '<' && strResult.substring(i, i + 6).equals("<span>")) { str1 = str1 + strResult.substring(i + 6, i + 9) + "\n星座日期:" + strResult.substring(i + 13, getEnd(strResult, i+13)); } if (strResult.charAt(i) == '有' && strResult.substring(i, i + 4).equals("有效日期")) { str1 = str1 + "\n有效日期:" + strResult.substring(i+5, getEnd(strResult, i+6)); } if(strResult.charAt(i)=='健' && strResult.substring(i, i + 4).equals("健康指数")) { str1 = str1 + "\n健康指数:" + strResult.substring(i+12, getEnd(strResult, i+12)); } if(strResult.charAt(i)=='商' && strResult.substring(i, i + 4).equals("商谈指数")) { str1 = str1 + "\n商谈指数:" + strResult.substring(i+12, getEnd(strResult, i+12)); } if(strResult.charAt(i)=='幸' && strResult.substring(i, i + 4).equals("幸运颜色")) { str1 = str1 + "\n幸运颜色:" + strResult.substring(i+12, getEnd(strResult, i+12)); } if(strResult.charAt(i)=='速' && strResult.substring(i, i + 4).equals("速配星座")) { str1 = str1 + "\n速配星座:" + strResult.substring(i+12, getEnd(strResult, i+12)); } if(strResult.charAt(i)=='l' && strResult.substring(i, i + 8).equals("lotconts")) { int end = i+10; while (strResult.charAt(end) != '<') { end++; } str2 = str2 + strResult.substring(i+10, end); break; } } viewLuck.setText(str1); viewContent.setText(str2); } } catch (ClientProtocolException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }
相关文章推荐
- Android开发中退出程序的方法
- Android程序开发之UIScrollerView里有两个tableView
- Android应用开发揭秘的第11个程序5_6_DrawText修改版和高仿版的源码注释
- Android 程序开发技巧 (网摘)
- 开发的一个android程序,总是显示无法运行,就退出了。但是没有报错。求大神解救啊!
- Eclipse开发Android程序如何在手机上运行
- Android开发学习之二 Android程序架构
- Android蓝牙聊天程序的扩展开发(基于Google Sample,类QQ设计)
- Android程序开发——WebView的开发 结合Html和JS
- android eclipse开发环境 自动提示 程序无法响应解决方法
- Android游戏和应用开发中强制横竖屏引起的程序重新启动问题
- HTML5定稿了,终于有一种编程语言开发的程序可以在Android和IOS两种设备上运行了
- Android程序之全国天气预报查询(聚合数据开发)
- Android程序开发之获取汉字的首字母
- DragonBoard 410c开发第一个Android程序
- 【Android开发】eclipse环境下,运行程序的快捷键
- Eclipse---Android 软件开发之如何使用Eclipse Debug调试程序详解
- Android开发学习笔记(三)——基于Eclipse开发环境的搭建及HelloAndroid示例程序的创建
- Android程序开发————ActionBar和ToolsBar