创建Android工程心德,Android项目的个人总结
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项目的个人总结相关推荐
- 怎么给android工程改名字,Android Studio项目改名操作
一.修改项目文件名: 假设原项目名叫AA,要改为BB. 先退出Android Studio,找到这个项目的文件夹AA,改名为BB,打开这个文件夹,找到AA.iml,打开这个文件,替换所有AA为BB,并 ...
- android 画布心形,Android CustomShapeImageView对图片进行各种样式裁剪:圆形、星形、心形、花瓣形等...
Android CustomShapeImageView对图片进行各种样式裁剪:圆形.星形.心形.花瓣形等 Android CustomShapeImageView是github上一个第三方开源 ...
- android 引用非 android 工程,Unity3D调用android方法(非插件方式)
关于Unity3D工程与android工程的转换与合并,请参考我的另外一篇博客,如果你对Unity3D工程加入到android工程的过程不熟悉,也请先看完下面这篇博客: android与Unity3D ...
- android 自定义心形,android使用贝塞尔曲线自定义心形View
贝塞尔曲线(Bézier curve),又称贝兹曲线或贝济埃曲线,是应用于二维图形应用程序的数学曲线. 绘制心形需要Path类中的两个方法分别是: moveTo(float x,float y) 贝塞 ...
- android绘制心形,Android中的心形按钮
I have this application that I am working on and the user can mark some items as a favorite. I want ...
- android工程r红,Android Studio - 为什么R随机变为红色?
这发生在几个不同的场合,我一直只是忽略它 - 但现在我接近完成我的一些项目,所以它不能再被忽略. 问题如下:在Android Studio的一个项目中,在多个场合(看似随意),对"R&quo ...
- android 工程模式mtk,Android L版本上user版本工程模式中gsensor校准失败
[DESCRIPTION] 工程模式中gsensor的校准需要用到em_svr这个service,但是因为build选项的原因,在user编译时,这段code没有被build,导致user版本工程模式 ...
- android工程文件assts,Android初始化FaceSDK报错
Android参照人脸识别官方Demo(FacePrint)跑起,使用我的工程package,license,没有问题. 根据Demo做代码迁移,迁移过来OCR-UI,FacePlatform, Fa ...
- Android创建项目java报错,创建Android工程时报错:Errors running builder 'Android resource manager' on project '项目...
使用Eclipse创建Android工程(new→project→Android Application Project.....→finish)时报错java.lang.NULLPointerExc ...
最新文章
- oracle数据库备份恢复篇(一)
- 16625篇论文揭示25年来AI进化规律!深度学习时代行将结束!
- anaconda3卸载python_机器学习Python编程环境:VSCode+Anaconda
- [SDOI2008]Cave 洞穴勘测
- Ballast,一种精准控制 Go GC 提高性能的方法
- day1作业:登录接口
- 冲突、冲突域、广播、广播域、洪泛的基本概念
- 接口规范 8. 播出认证相关接口
- Dropping Balls(小球下落)
- python asyncio tcp server_关于 asyncio 创建多个 tcp 连接,线程数不准确的问题
- 自动化睡眠分期工具:开源、免费、高效
- 51单片机电路原理图_51单片机AD转换电路设计实现
- 面试题:高速PCB一般布局、布线原则
- myscript 思路整理
- 两个网段计算机如何共享打印机,不同网段的打印机共享怎么连接?具体步骤
- Mysql 面向企业级开发(一)
- 通过简单的强化学习实现井字棋(Tic-Tac-Toe)
- 哈佛商业评论:关于区块链的真相
- js从字符串中提取身份证号,连续18位数字
- Windows上获取cpu info, cpuid, cpu id 方法整理
热门文章
- ADI 逆变器 多通道I/O 数字隔离器 ADUM3481 ADUM1412 ADUM1402 ADUM1201 ADUM1210 ADUM3201
- 【扫描线法】 poj 1177 hdu 1828
- 数据库(SQL Server )经典例题(一):对S表、P表、J表、SPJ表的操作——数据库的创建
- 接触 Firebug
- 撑算力之帆,天翼云助力数字时代逐潮者远航
- Guava 本地缓存使用教程
- 网课-文献管理与信息分析-罗昭峰作业答案(二)
- 下推式磁悬浮(一):制作清单
- ADIS16465姿态解算+卡尔曼滤波代码
- 论文理解 A Survey on Trajectory-Prediction Methods for Autonomous Driving