幸运快三 > 数码 > android

Android开发学习:[25]Android获取天气预报

Android开发学习:[25]Android获取天气预报,本经验将介绍Adroid如何获取天气预报主要使用了幸运快三天气网的接口,使用weView显示。

本经验将介绍Android如何获取天气预报主要使用了幸运快三天气网的接口,使用webView显示。

工具/原料

  • Android Studio

方法/步骤

  1. 1

    首先我们打开下载安装好的Android Studio然后新建一个项目,我这里为了方便就直接添加一个Activity了

    Android开发学习:[25]Android获取天气预报步骤阅读
  2. 2

    然后我们添加界面布局代码,布局如下:

    <?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>

    Android开发学习:[25]Android获取天气预报步骤阅读
  3. 3

    然后我们添加后台代码:

    package com.basillee.asus.demo;

    import android.app.Activity;

    import android.os.Bundle;

    import android.view.View;

    import android.view.View.OnClickListener;

    import android.webkit.WebChromeClient;

    import android.webkit.WebView;

    import android.webkit.WebViewClient;

    import android.widget.Button;

    public class MainActivity7 extends Activity implements OnClickListener {

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

        @Override

        protected void onCreate(Bundle savedInstanceState) {

            super.onCreate(savedInstanceState);

            setContentView(R.layout.activity_main_activity7);

            webView=(WebView)findViewById(R.id.webView1); //获取WebView组件

            webView.getSettings().setJavaScriptEnabled(true); //设置JavaScript可用

            webView.setWebChromeClient(new WebChromeClient()); //处理JavaScript对话框

            webView.setWebViewClient(new WebViewClient()); //处理各种通知和请求事件,如果不使用该句代码,将使用内置浏览器访问网页

            webView.loadUrl("http://m.weather.com.cn/m/pn12/weather.htm "); //设置默认显示的天气预报信息

            webView.setInitialScale(57*4); //放网页内容放大4倍

            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);

        }

        @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;

            }

        }

        //打开网页的方法

        private void openUrl(String id){

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

        }

    }

    Android开发学习:[25]Android获取天气预报步骤阅读
  4. 4

    然后我们点击Android Studio上面的运行按钮:

    Android开发学习:[25]Android获取天气预报步骤阅读
  5. 5

    这里要访问网络我们要添加权限:   

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

    Android开发学习:[25]Android获取天气预报步骤阅读
  6. 6

    我们然后可以在模拟器上面可以看到获取的天气情况

    Android开发学习:[25]Android获取天气预报步骤阅读
    END

注意事项

  • 本系列经验喜欢的可以在下面系列经验查看
Android开发学习(共41篇)
上一篇:Android加载网页|下一篇:绘制Android小机...

本文来自投稿,不代表幸运快三立场,转载请注明出处:http://www.morucat.com/digital/11579.html