#趣米杯#码农天气--码农自己的天气APP(五)
来源:互联网 发布:tor网络介绍 编辑:程序博客网 时间:2024/06/05 21:13
本帖最后由 jnhoodlum 于 2014-2-10 17:51 编辑
本文参与趣米杯征文活动,如需转载请注明出处和作者
#趣米杯#码农天气--码农自己的天气APP(一)
#趣米杯#码农天气--码农自己的天气APP(二)
#趣米杯#码农天气--码农自己的天气APP(三)
#趣米杯#码农天气--码农自己的天气APP(四)
之前四篇文章已经把码农天气的主要功能都实现的差不多了,现在还剩最后一个大的功能:设置。这一讲完成以后,码农天气的功能就基本完成了,我会在文章的最后把代码贴出来,供大家拍砖。
我们先看一下彩虹天气的设置页面:
我没有仔细看彩虹天气的这个menu页面是怎么实现的,但是我觉得他应该是使用的一个开源框架SlidingMenu,这是SlidingMenu的GitHub主页:https://github.com/jfeinstein10/SlidingMenu,大家有兴趣的话可以研究一下这块的内容,网上教程也很多,这一块我就不多说了。
这是我实现的menu界面:
彩虹天气是整个页面都向右移,而我做的这个menu页面只是在标题栏下面从左侧划入/划出,不会覆盖标题栏,这个是怎么做的呢?
其实这个也很简单,我使用的是google在2013 google io大会上发布的一个新的support v4的控件Navigation Drawer。大家在这里查看到google官方的指导:http://developer.android.com/training/implementing-navigation/nav-drawer.html
大家看一下官方给出参考布局文件
<android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<!-- The main content view -->
<FrameLayout
android:id="@+id/content_frame"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<!-- The navigation drawer -->
<ListView android:id="@+id/left_drawer"
android:layout_width="240dp"
android:layout_height="match_parent"
android:layout_gravity="start"
android:choiceMode="singleChoice"
android:divider="@android:color/transparent"
android:dividerHeight="0dp"
android:background="#111"/>
</android.support.v4.widget.DrawerLayout>
大家注意仔细看ListView里面的这句话
android:layout_gravity="start"
只要你在一个布局文件中添加了这句,android就会知道你是要在这个布局文件中实现一个Navigation Drawer,很简单吧!
下面是我写的的布局文件:
跟google官方给出的参考几乎一模一样,其实我们在做别的项目的时候也完全可以就使用这套代码,除了背景什么的可能需要修改一下,其他的完全不需要动。
最后我们在定义一个fragment,填充到上面布局文件中的RelativeLayout中
具体的这个菜单中的布局和逻辑,大家一会就下载了代码自己看看吧。
这是最后实现的效果图:
最后是源码,这是我花了5天下班时间写的,每天熬夜不容易,麻烦大家顶一下再下吧:
本文参与趣米杯征文活动,如需转载请注明出处和作者
#趣米杯#码农天气--码农自己的天气APP(一)
#趣米杯#码农天气--码农自己的天气APP(二)
#趣米杯#码农天气--码农自己的天气APP(三)
#趣米杯#码农天气--码农自己的天气APP(四)
之前四篇文章已经把码农天气的主要功能都实现的差不多了,现在还剩最后一个大的功能:设置。这一讲完成以后,码农天气的功能就基本完成了,我会在文章的最后把代码贴出来,供大家拍砖。
我们先看一下彩虹天气的设置页面:
我没有仔细看彩虹天气的这个menu页面是怎么实现的,但是我觉得他应该是使用的一个开源框架SlidingMenu,这是SlidingMenu的GitHub主页:https://github.com/jfeinstein10/SlidingMenu,大家有兴趣的话可以研究一下这块的内容,网上教程也很多,这一块我就不多说了。
这是我实现的menu界面:
彩虹天气是整个页面都向右移,而我做的这个menu页面只是在标题栏下面从左侧划入/划出,不会覆盖标题栏,这个是怎么做的呢?
其实这个也很简单,我使用的是google在2013 google io大会上发布的一个新的support v4的控件Navigation Drawer。大家在这里查看到google官方的指导:http://developer.android.com/training/implementing-navigation/nav-drawer.html
大家看一下官方给出参考布局文件
<android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<!-- The main content view -->
<FrameLayout
android:id="@+id/content_frame"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<!-- The navigation drawer -->
<ListView android:id="@+id/left_drawer"
android:layout_width="240dp"
android:layout_height="match_parent"
android:layout_gravity="start"
android:choiceMode="singleChoice"
android:divider="@android:color/transparent"
android:dividerHeight="0dp"
android:background="#111"/>
</android.support.v4.widget.DrawerLayout>
大家注意仔细看ListView里面的这句话
android:layout_gravity="start"
只要你在一个布局文件中添加了这句,android就会知道你是要在这个布局文件中实现一个Navigation Drawer,很简单吧!
下面是我写的的布局文件:
跟google官方给出的参考几乎一模一样,其实我们在做别的项目的时候也完全可以就使用这套代码,除了背景什么的可能需要修改一下,其他的完全不需要动。
最后我们在定义一个fragment,填充到上面布局文件中的RelativeLayout中
具体的这个菜单中的布局和逻辑,大家一会就下载了代码自己看看吧。
这是最后实现的效果图:
最后是源码,这是我花了5天下班时间写的,每天熬夜不容易,麻烦大家顶一下再下吧:
0 0
- #趣米杯#码农天气--码农自己的天气APP(五)
- #趣米杯#码农天气--码农自己的天气APP(一)
- #趣米杯#码农天气--码农自己的天气APP(二)
- #趣米杯#码农天气--码农自己的天气APP(三)
- #趣米杯#码农天气--码农自己的天气APP(四)
- 码农天气--码农自己的天气APP(一)
- 天气APP的实战(1)
- 新人自己开发的天气app,有兴趣的可以交流
- "晴天"天气app的开源库逐步学习(五)完结篇
- 天气类APP产品微体验(墨迹天气、中央天气预报、雅虎天气、2345天气王)
- 基于Android的天气APP
- 自己的网页加载天气
- 【酷我天气】完整的天气App项目
- 天气
- 天气
- 天气
- 天气
- 天气
- C# 通过 BarcodeLib 生成条形码
- gdb调试时的问题Missing separate debuginfos, use: debuginfo-install glibc-XXX
- 计算机专业就业现状及指导
- aid列表
- POSIX 线程详解,第 2部分
- #趣米杯#码农天气--码农自己的天气APP(五)
- PHP多线程
- 新年到了,发个百度与EMC详细面试经历,为后人铺路
- .bash_profile和.bashrc的什么区别
- 2014年2月20日 excel 工具 POI 的使用小记 java 的单例模式回顾 记忆
- 决明子
- c# Byte[]、Image、Bitmap 之间的相互转换
- Netty文件传输,使用HttpChunk
- PostgreSQL使用手册