欢迎

How more than you show,speak less than you know.

实训课:总结

从CSDN搬过来的,没有什么实用的地方。只是为了纪念而转过来


介绍


 有些忙,上课时发现了很多问题和疑问,总体来说这几天老师的教学进度非常快,我这个学期又翘了安卓的课,所以这几天学起来略显吃力。实训课有两个部分,一个是Android App开发,实现基本界面和通过json数据交换完成基本的网络数据接收功能。另一个就是简单的web网页开发,与以往不同的是要通过css来完成一些稍微复杂的动画展示。


Android APP开发:


Android Studio for Mac安装

Android Studio官网
《实训课:总结》

下拉网页下载对应系统的studio,我是mac系统所以往下的操作会和windows有些不同

《实训课:总结》
点击下载,也可以点击此处下载(400M+)

 我的电脑已安装过所以没办法展示后续的安装,把它提示需要安装的环境根据提示自动下载即可,没有什么难度。需要提示一下如果在下载过程中断网或者意外关机(我在下载时网断掉下载被中断了)重新打开软件运行即可,他会提示你缺少的东西。
《实训课:总结》
主界面


Android Studio的基本操作

1.界面
《实训课:总结》

2.自动添加构造方法和getset.右键->Generate
《实训课:总结》

3.更改键盘的操作模式,因为之前是在eclipse操作,所以有些人还是习惯于eclipse的操作方式。

《实训课:总结》

《实训课:总结》

再有的话做补充.其他的于eclipse差不多,等发现在补充。


Android Studio的一些快捷键

//链接


关于学习中涉及的知识了解和复习

  1. 接口
    (1)接口与抽象类的区别?

    接口和抽象类都是继承树的上层,他们的共同点如下:
    1) 都不能被实例化
    2) 都能包含抽象的方法,这些抽象的方法用于描述类具备的功能,但是不比提供具体的实现。他们的区别如下:
    1) 在抽象类中可以写非抽象的方法,从而避免在子类中重复书写他们,这样可以提高代码的复用性,这是抽象类的优势;接口中只能有抽象的方法。
    2) 一个类只能继承一个直接父类,这个父类可以是具体的类也可是抽象类;但是一个类可以实现多个接口。
    来自知乎

    (2)接口的作用?
        当我们的用户需要要扩充功能的时候,只需要在外部做很小的修改就能实现,可以不用改动已经封好组件。
    (转载):理解接口的作用

  2. Fragment
    (1)简介:

        Fragment是在Android 3.0 (API level 11)开始引入新的API技术。
    为了提高代码重用性和改善用户体验,我们将Activity中的UI组件进行分组和模块化管理。这些分组后的UI组件就是Fragment。
        一个Activity页面中可以包含多个Fragment模块,而同一个Fragment模块也可以被多个Activity使用。每个Fragment有自己的布局,有自己的生命周期。虽然Fragment拥有自己的生命周期,但因为Fragment必须被嵌入到Activity中使用,因此Fragment的生命周期是受其Activity宿主的命周期所控制的。当Activity暂停时,该Activtiy内的所有Fragment都会暂停;当Activity被销毁时,该Activity内的所有Fragment都会被销毁。

    (2)使用方式
        fragment的使用分为静态和动态,动态的使用主要用于通过按钮或者滑动来实现切换界面的效果。
    fragment的深入理解(转载)(我还没看,先转过来慢慢看)
    扩展:Square:从今天开始抛弃Fragment吧!(转载自“泡在网上的日子移动开发网站”)

  3. Context
        这个着实是令我很头痛的一个知识点,因为没有去上课,刚接触时对此完全懵逼不知从何下手,遇到函数里的形参为Context时完全不知道传的是什么。


    (1)它是什么?

    1) 是一个抽象类,其通用实现在ContextImpl类中。Activity、Service、Application等都是该类的一个实现。

    2)是一个访问application环境全局信息的接口,通过它可以访问application的资源和相关的类,其主要功能如下:

    3)启动Activity 启动和停止Service 发送广播消息(Intent) 注册广播消息(Intent)接收者
    4)可以访问APK中各种资源(如Resources和AssetManager等) 可以访问Package的相关信息 APK的各种权限管理

    (2)与其他控件的关系
       View与Context(或Activity)的关系类似于明星与经纪人的关系,所以创建View时,必须明确指定其Context(即经纪人或大管家),否则View就成不了明星。
    《实训课:总结》

    摘抄自码农网


    (3)其他
       总Context实例个数 = Service个数 + Activity个数 + 1(Application对应的Context实例)


    (4)什么时候创建Context实例
        1、创建Application 对象时, 而且整个App共一个Application对象
        2、创建Service对象时
        3、创建Activity对象时
    转载至也是转载于http://blog.csdn.net/qinjuning

  4. @Nullable

       这些注解是用来标注方法是否能传入null值,如果可以传入NUll值,则标记为nullbale,如果不可以则标注为Nonnull.
    在我们做了一些不安全严谨的编码操作的时候,这些注释会给我们一些警告。
    转载自: 安卓中的@Nullable和NotNull 注释
    扩展阅读:可空类型是什么?

  5. Adapter
    1)简介

       Adapter是连接后端数据和前端显示的适配器接口,是数据和UI(View)之间一个重要的纽带。在常见的View(List
    View,Grid View)等地方都需要用到Adapter。如下图直观的表达了Data、Adapter、View三者的关系:
    《实训课:总结》

    转载自Android之Adapter用法总结

  6. Json
    1)简介

       JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式。它基于 ECMAScript (w3c制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。
       处理Javascript 和web服务器端的之间数据交换,一种传输数据的格式。

    JSON百度百科

    2)Json解析
       找到的json接口打开后基本都是难以辨认的,可以去http://www.json.cn解析接口

  7. 关于网络接口
       可以大概理解为不间断给应用传送报文的一个路径,而我也知道这条路,所以我走在这条路上,也可以传送的报文。(小白视角)
       JSON接口需要自己去查找,http://www.sojson.com/api/是个不错的选择。


简单的模仿糗事百科的APP

   模仿了功能界面,点击按钮、左右滑动可以切换视图,有了基本的网络功能。
《实训课:总结》
   程序很简单,而且我关顾着上课没有记什么笔记。所以这次就先把资源放上来,里面也有老师写的备注,所以不是很难理解。
基于安卓开发的模仿糗事百科界面


web动画特效网页开发


Hbuilder的安装和使用

Hbuilder官网点击下载就可以,免费。


关于动画

《实训课:总结》
《实训课:总结》
《实训课:总结》

(这个水印太丑了,打算研究一下把他删掉。)
CSDN博客中图片上的水印(转载))


Hbuilder基本操作

  1. 主界面
    《实训课:总结》

界面很简单,如果之前用过dreamwear很快就能上手

2. 快捷键
//链接。
快捷键


HTML&CSS需要了解的知识点

  1. position

       W3school的说明:

    《实训课:总结》

       这几种方式都可以达到同一个效果。比如我想让图片左边移动20px,这三种都可以做到。但是对于整体布局来说,是有影响的。

  2. nth-child

    nth-child(n) 选择器匹配属于其父元素的第 N 个子元素,不论元素的类型。

    使用:公式 (an + b)。描述:表示周期的长度,n 是计数器(从 0 开始),b 是偏移值。(n 可以是数字、关键词或公式。)

  3. before after

    :before是css中的一种伪元素,可用于在某个元素之前插入某些内容。
    :after是css中的一种伪元素,可用于在某个元素之后插入某些内容。

    (转载)详解before和after

  4. transform&transtion
    transform:转换
    transition:过渡
    两者搭配就可以实现过渡动画的效果,当然通过修改长宽高也是可以的。

  5. @-webkit-keyframes
       这个困扰了很久,因为之前用keyframes做的动画,发现动画总是莫名奇妙的抖动,闪烁,查了资料,W3c给的解释是:

    目前浏览器都不支持 @keyframes 规则。
    Firefox 支持替代的 @-moz-keyframes 规则。
    Opera 支持替代的 @-o-keyframes 规则。
    Safari 和 Chrome 支持替代的 @-webkit-keyframes 规则。

    keyframes规则


Web动画

   实现的原理很简单,就是通过每个div的变换过渡动画来拼接成一个完整的动画。
   (那张welcome的图是P的,如果有新手想知道怎么做的可以私信我。另外背景素材是来自https://unsplash.com这种网站命都比较短,想下东西要抓紧。)
   把源码传上来,希望有大神看到可以帮忙指点。


结语

   这些天确实是很累,但是学到了很多,当然我也付出了的代价,没有基础硬跟着老师学Android开发。总之自己要学的东西还是太多了,我自以为html我是很熟练的,但是这次课程我依旧学到了很多东西,对自己学的东西保持谦卑才是我应该学习的。


  1. news fahsion说道:

    Link exchange is nothing else however it is
    simply placing the other person's weblog link on your page at suitable place and other
    person will also do same in favor of you.

  2. make up说道:

    Ꭺn intriguing discussion іs worth ϲomment.
    I do think that үoս neeԁ to puboish m᧐re on this issue, it may not be a taboo matter bbut
    typically people ԁon't talk aƅout thesе issues. Ƭ᧐ thе next!
    Cheers!!

发表评论

电子邮件地址不会被公开。 必填项已用*标注