实现获取指定城市的天气预报

1、布局文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:gravity="center_horizontal"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
	>
	<LinearLayout
	    android:orientation="horizontal"
	    android:layout_width="wrap_content"
	    android:layout_height="wrap_content"
	  >

		<Button
		    android:id="@+id/bj"
		    android:layout_width="wrap_content"
		    android:layout_height="wrap_content"
		    android:text="@string/bj" />

		<Button
		    android:id="@+id/sh"
		    android:layout_width="wrap_content"
		    android:layout_height="wrap_content"
		    android:text="@string/sh" />

		<Button
		    android:id="@+id/heb"
		    android:layout_width="wrap_content"
		    android:layout_height="wrap_content"
		    android:text="@string/heb" />

		<Button
		    android:id="@+id/cc"
		    android:layout_width="wrap_content"
		    android:layout_height="wrap_content"
		    android:text="@string/cc" />

		<Button
		    android:id="@+id/sy"
		    android:layout_width="wrap_content"
		    android:layout_height="wrap_content"
		    android:text="@string/sy" />

		<Button
		    android:id="@+id/gz"
		    android:layout_width="wrap_content"
		    android:layout_height="wrap_content"
		    android:text="@string/gz" />
	 
	</LinearLayout>
	<WebView android:id="@+id/webView1" 
		android:layout_width="wrap_content" 
		android:layout_height="0dip" 
		 android:focusable="false"
		 android:layout_weight="1"
		/>
	
</LinearLayout>

2、在MainActivity中,声明一个WebView组件的对象

private WebView webView;//声明WebView组件的对象

3、webView

webView = (WebView)findViewById(R.id.webView1);//获取WebView组件
        webView.getSettings().setJavaScriptEnabled(true);//设置JavaScript可用
        webView.setWebChromeClient(new WebChromeClient());//设置JavaScript对话框
        //处理各种通知和请求时间,如果不适用该句代码,将使用内置浏览器访问网页
        webView.setWebViewClient(new WebViewClient());
        webView.loadUrl("http://www.baidu.com");//设置默认显示的天气预报信息
        webView.setInitialScale(57*4);//网页内容放大4倍

4、让MainActivity实现OnClickListener接口,并重写onClick()方法

public class MainActivity extends Activity implements OnClickListener{

@Override
	public void onClick(View view) {
		switch(view.getId()){
		case R.id.bj:		//单击的是“北京”按钮
			openUrl("101010100T");
			break;
		case R.id.sh:		//单击的是“上海”按钮
			openUrl("101020100T");
			break;			
		case R.id.heb:		//单击的是“哈尔滨”按钮
			openUrl("101050101T");
			break;			
		case R.id.cc:		//单击的是“长春”按钮
			openUrl("101060101T");
			break;			
		case R.id.sy:		//单击的是“沈阳”按钮
			openUrl("101070101T");
			break;			
		case R.id.gz:		//单击的是“广州”按钮
			openUrl("101280101T");
			break;			
		}
	}


5、添加点击事件

<span style="white-space:pre">		</span>Button bj=(Button)findViewById(R.id.bj);		//获取布局管理器中添加的“北京”按钮
		bj.setOnClickListener(this);
		Button sh=(Button)findViewById(R.id.sh);		//获取布局管理器中添加的“上海”按钮
		sh.setOnClickListener(this);		
		Button heb=(Button)findViewById(R.id.heb);		//获取布局管理器中添加的“哈尔滨”按钮
		heb.setOnClickListener(this);
		Button cc=(Button)findViewById(R.id.cc);		//获取布局管理器中添加的“长春”按钮
		cc.setOnClickListener(this);
		Button sy=(Button)findViewById(R.id.sy);		//获取布局管理器中添加的“沈阳”按钮
		sy.setOnClickListener(this);
		Button gz=(Button)findViewById(R.id.gz);		//获取布局管理器中添加的“广州”按钮
		gz.setOnClickListener(this);


6、编写用于打开网页获取天气预报信息的方法openUrl()

private void openUrl(String id){
		webView.loadUrl("http://m.weather.com.cn/m/pn12/weather.htm?id="+id+" ");	//获取并显示天气预报信息
	}

7、AndroidManifest.xml文件访问网络的权限

 <uses-permission android:name="android.permission.INTERNET"/>

获取天气的网页好像失效了


  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值