Material Design  实战  是由谷歌的设计工程师

1、Toolbar xml文件中调用android.support.v7.widget.Toolbar

2、滑动菜单 DrawerLayout 包含Toolbar

3、导航视图(NavigationView)——design 通常与抽屉布局(DrawerLayout)结合使用,实现了良好的侧滑交互体验。

侧滑中的圆形头像调用 CircleImageView依赖包

4、天气应用:

和风天气官网,获取API数据 需要注册开发者账号

gitHub的使用,把自己的项目通过git客户端上传到gitHub上

Litepal依赖包,它使SQLite数据库变得非常简单,不用写一句SQL语句就可以完成大部分数据库操作

okhttp3,基于OkHttp3封装的网络请求库  获取全国省市县API数据

gson,GSON 解析 显示天气信息

glide,Android的图像加载和缓存库专注于平滑滚动

1> 新建四个java文件,db、gson、service、util

设计一个数据库结构,在db文件新建三个表(class)类继承 DataSupport  初始化属性,并且set,get

用到Litepal依赖包需要配置litepal.xml文件,在main文件中创建assets目录下创建litepal文件

最后还需要再Androidmainfest文件中application中添加android:name="org.litepal.LitePalApplication"

2> 遍历全国省市县数据需要从服务器中获取,在util文件中创建HttpUtil类,调用sendOkHttpRequest()方法

由于服务器返回是省市县数据都是JSON格式,需要提供一个工具类来解析和处理这些数据,util文件中再创建Utilty工具类

重复用的功能布局,建议不要写在Activity中调用,而是在Fragment中调用重复的布局功能。碎片(Fragment)的活动中最好不要直接使

用ActionBar或Toolbar,不然复用的时候会出现问题

接下来需要编写Fragment(碎片),新建一个类继承Fragment

onCreateView()方法中先获取到了一些控件的实例,

onActivityCreated()方法中给listView和Button设置点击事件,最后调用了queryProvinces()方法,开始加载数据

queryProvinces()方法点击button按钮获取 setVisibility(View.GONE);

queryFromServer()方法中会调用HttpUtil中的sendOkHttpRequest()方法来向服务器发送请求,响应的数据会调用onResponse()方法中,

调用util文件中的Utility工具类

碎片(Fragment)不能直接显示在界面上,因此需要添加到活动里才行,需要把Fragment中引用的布局,在活动的布局中

android:id="@+id/choose_area_fragment"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:name = "com.example.coolweather.ChooseAreaFragment" />

3> GSON依赖包的用法,在gson文件中对Api数据中的大致格式有一定的了解,再筛选出一下比较重要的或者用到的数据来进行解析

public class Forecast {

public String date;

@SerializedName("tmp")

public Temperature temperature;

@SerializedName("cond")

public More more;

4>

日历应用:

1>// 新建menu文件,并且在menu文件中新建xml文件,并且在ietm中设置菜单属性,在java活动文件中用

//onCreateOptionsMenu()方法加载menu文件

//onOptionsItemSelected()方法处理菜单文件中的点击事件

2>业务类的java文件继承再新建的xml布局  public class NewCalendar extends LinearLayout

并在calendar_view视图中进行布局,ImageView使用android:layout_alignParentLeft="true" 表示靠左边

android:layout_alignParentRight="true" 表示靠右边

TextView     android:gravity="center_horizontal"  居中

下面的周一到周日为七个TextView   并且使用权重 android:layout_weight="1"

底部为GridView  android:numColumns="7"

NewCalendar继承LinearLayout 组建构建函数  再实现业务逻辑initControl()方法内绑定布局方法和业务逻辑方法

布局方法中实例化calendar_view中的控件findViewById

点击事件中setOnClickListener 调用系统控件Calendar  渲染视图

创建Android工程心德,Android项目的个人总结相关推荐

  1. 怎么给android工程改名字,Android Studio项目改名操作

    一.修改项目文件名: 假设原项目名叫AA,要改为BB. 先退出Android Studio,找到这个项目的文件夹AA,改名为BB,打开这个文件夹,找到AA.iml,打开这个文件,替换所有AA为BB,并 ...

  2. android 画布心形,Android CustomShapeImageView对图片进行各种样式裁剪:圆形、星形、心形、花瓣形等...

     Android CustomShapeImageView对图片进行各种样式裁剪:圆形.星形.心形.花瓣形等 Android CustomShapeImageView是github上一个第三方开源 ...

  3. android 引用非 android 工程,Unity3D调用android方法(非插件方式)

    关于Unity3D工程与android工程的转换与合并,请参考我的另外一篇博客,如果你对Unity3D工程加入到android工程的过程不熟悉,也请先看完下面这篇博客: android与Unity3D ...

  4. android 自定义心形,android使用贝塞尔曲线自定义心形View

    贝塞尔曲线(Bézier curve),又称贝兹曲线或贝济埃曲线,是应用于二维图形应用程序的数学曲线. 绘制心形需要Path类中的两个方法分别是: moveTo(float x,float y) 贝塞 ...

  5. android绘制心形,Android中的心形按钮

    I have this application that I am working on and the user can mark some items as a favorite. I want ...

  6. android工程r红,Android Studio - 为什么R随机变为红色?

    这发生在几个不同的场合,我一直只是忽略它 - 但现在我接近完成我的一些项目,所以它不能再被忽略. 问题如下:在Android Studio的一个项目中,在多个场合(看似随意),对"R&quo ...

  7. android 工程模式mtk,Android L版本上user版本工程模式中gsensor校准失败

    [DESCRIPTION] 工程模式中gsensor的校准需要用到em_svr这个service,但是因为build选项的原因,在user编译时,这段code没有被build,导致user版本工程模式 ...

  8. android工程文件assts,Android初始化FaceSDK报错

    Android参照人脸识别官方Demo(FacePrint)跑起,使用我的工程package,license,没有问题. 根据Demo做代码迁移,迁移过来OCR-UI,FacePlatform, Fa ...

  9. Android创建项目java报错,创建Android工程时报错:Errors running builder 'Android resource manager' on project '项目...

    使用Eclipse创建Android工程(new→project→Android Application Project.....→finish)时报错java.lang.NULLPointerExc ...

最新文章

  1. oracle数据库备份恢复篇(一)
  2. 16625篇论文揭示25年来AI进化规律!深度学习时代行将结束!
  3. anaconda3卸载python_机器学习Python编程环境:VSCode+Anaconda
  4. [SDOI2008]Cave 洞穴勘测
  5. Ballast,一种精准控制 Go GC 提高性能的方法
  6. day1作业:登录接口
  7. 冲突、冲突域、广播、广播域、洪泛的基本概念
  8. 接口规范 8. 播出认证相关接口
  9. Dropping Balls(小球下落)
  10. python asyncio tcp server_关于 asyncio 创建多个 tcp 连接,线程数不准确的问题
  11. 自动化睡眠分期工具:开源、免费、高效
  12. 51单片机电路原理图_51单片机AD转换电路设计实现
  13. 面试题:高速PCB一般布局、布线原则
  14. myscript 思路整理
  15. 两个网段计算机如何共享打印机,不同网段的打印机共享怎么连接?具体步骤
  16. Mysql 面向企业级开发(一)
  17. 通过简单的强化学习实现井字棋(Tic-Tac-Toe)
  18. 哈佛商业评论:关于区块链的真相
  19. js从字符串中提取身份证号,连续18位数字
  20. Windows上获取cpu info, cpuid, cpu id 方法整理

热门文章

  1. ADI 逆变器 多通道I/O 数字隔离器 ADUM3481 ADUM1412 ADUM1402 ADUM1201 ADUM1210 ADUM3201
  2. 【扫描线法】 poj 1177 hdu 1828
  3. 数据库(SQL Server )经典例题(一):对S表、P表、J表、SPJ表的操作——数据库的创建
  4. 接触 Firebug
  5. 撑算力之帆,天翼云助力数字时代逐潮者远航
  6. Guava 本地缓存使用教程
  7. 网课-文献管理与信息分析-罗昭峰作业答案(二)
  8. 下推式磁悬浮(一):制作清单
  9. ADIS16465姿态解算+卡尔曼滤波代码
  10. 论文理解 A Survey on Trajectory-Prediction Methods for Autonomous Driving