Android应用开发:天气预报应用

本教程将介绍如何开发android应用程序 。 在本教程中,我们将探讨创建Android应用程序所需的内容以及可用于创建应用程序的积木。 例如,我们将创建一个天气应用程序。 几个月前我们讨论了它 ,我们将开发具有天气状况和天气预报的天气应用程序。 要开发一个android应用程序,我们至少需要:

  • 一个活动
  • 布局

这些是我们可以使用的基本组件。 当然,我们想创建一些更复杂的东西,因为我们必须从远程服务器(在本例中为openweathermap)中检索信息,并且必须解析结果数据。 因此,我们需要添加以下基本组件:

  • HTTP连接
  • AsyncTask(没有ANR问题)
  • JSON解析
  • 数据模型(保存JSON数据)

最后,我们将获得:

android_weather_app [4]

应用布局

第一步是创建布局。 从下图中可以看到,我们的布局分为两部分:一个保留当前的天气状况,另一个保留天气预报。 在天气预报中,我们必须在不同的日期之间移动,以便可以使用ViewPager. 在这种情况下,我们可以使用LinearLayout:

android_linearlayout [4]

现在我们有了布局,可以开始研究每个部分了。 在第一部分(当前天气)中,我们可以使用RelativeLayout将每个小部件放置在正确的位置:

<RelativeLayout 
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity"
    android:layout_weight="1" >

<TextView
    android:id="@+id/cityText"
    style="?android:attr/textAppearanceMedium"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true">        
</TextView>

<TextView
    android:id="@+id/temp"
    style="@style/tempStyle"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@id/cityText"
    android:layout_centerHorizontal="true">        
</TextView>
<TextView
    android:id="@+id/unittemp"        
    android:layout_width="wrap_content"
    style="?android:attr/textAppearanceMedium"
    android:layout_height="wrap_content"
    android:layout_below="@id/cityText"
   
  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值