• Android新浪星座运势程序开发


    有的时候无聊会到新浪网看新浪星座运势,准备自己也写个Android客户端的。首先打算很简单,只显示当天的星座运势。后面在可以在加上周,月,年等。 开发的样式大概是这样的,上半部分的左右两边有两个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();
    		}
  • 相关阅读:
    【BZOJ 3309】DZY Loves Math
    【51Nod 1239】欧拉函数之和
    【51Nod 1244】莫比乌斯函数之和
    莫比乌斯反演与杜教筛
    【BZOJ 3993】【SDOI 2015】星际战争
    【BZOJ 3876】【AHOI 2014】支线剧情
    【hihoCoder 1454】【hiho挑战赛25】【坑】Rikka with Tree II
    【BZOJ 1061】【Vijos 1825】【NOI 2008】志愿者招募
    【BZOJ 1016】【JSOI 2008】最小生成树计数
    【BZOJ 1005】【HNOI 2008】明明的烦恼
  • 原文地址:https://www.cnblogs.com/wanyakun/p/3403277.html
Copyright © 2020-2023  润新知