zoukankan      html  css  js  c++  java
  • Android——基础(2)

    学习Android 有一个很重要的设计思想就是——MVC设计模式。

    应用对象按模型、控制器和视图的类别分为三部分。Android应用基于模型——控制器——视图(Model—View—Controller、MVC)的架构模式进行设计。 

    MVC设计模式表明,应用的任何对象,归根结底都属于模型对象、视图对象、以及控制对象中的一种。

    模型对象:存储着应用的数据和业务逻辑。  视图对象知道如何在屏幕上绘制自己如何响应用户的输入,如用户的触摸等。    控制对象含有应用的逻辑单元,是视图与模型对象的联系纽带。

    使用MVC设计模式的好处:

    把java类以模型、视图和控制层进行分类组织,也有助于我们设计和理解应用。

    额。。最近重新把android基础看了一遍。然后买了一本书叫做《Android编程指南》(第二版) .个人感觉此书还不错。今天写一下在书中联系的一个简单的程序。

     我也是因为看了这本书之后更改了我自己的一些编译习惯。因为android的一个很中要的一个编译思想就是MVC模式,不管是你在给一个简单按钮Button定义它的名字也好,还是给一堆按钮定义它们的信息也好,都要想到这个编译思想。

    当一个用户使用一个app时,当他进行点击一个按钮的时候,你要去响应这个点击时间,你要去给这个控件去写它的方法,而不是一个死板的按钮,是一个有生命力,有自己的构造方法的按钮。

    下面我来画一个MVC数据控制流与用户交互的时候响应的数据流图:

    额...  图虽然画的有点丑,但是大体的意思就是个样子了。

    接下来来描述下Activity的生命周期.

    每个Activity都有其生命周期,activity在运行、暂停和停止三种可能的状态间进行转换。

    Activity的生命周期、状态以及状态切换时系统调用的方法有如下几种:

    1.onPause()、onStop()、onDestory()、onCreate()、onStart()、onReasume()。

    日志跟踪Activity的生命周期:

    Android 的android.util.Log类能够发送日志信息到系统级别的共享日志中心。Log类中有好几个日志记录方法:

    其中使用最多的是:

    public static int d(String tag,String msg):  ddaibiao "debug” ,用来表示日志信息的级别,第一个参数是表示日志的来源,第二个参数表示日志的具体内容。

    第一个参数通常以类名为值的TAG常量传入

    private static final String TAG="MainActivity";

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            Log.d(TAG, "onCreate(Bundle) called");
            setContentView(R.layout.activity_main);
        }

    小提示:@Override注解,就是要求编译器保证当前类具有你要覆盖的方法。

    覆盖onSaveInstanceState(Bundle)方法, 可通过此方法将一些数据保存在bundle中,然后在onCreate()方法中取出这些数据。

    当用户离开当前activity管理的用户界面,或Android需要回收内存时,acitivity也会被销毁,所以,为了用户的体验,Android 不会为了回收内存,而去销毁正在运行的activity。

    activity只有在暂停或者停止状态下才可能会被销毁

    在使用Android studio进行开发的时候,查看Log日志是非常重要的。

    使用android.util类记录日志信息,不仅可以控制日志的内容,还可以用来控制信息重要程度的日志级别。  Android支持五种日志级别:

    1.ERROR:  Log.e(...)  说明:错误

    2.WARNING: Log.w(...) 说明:警告

    3.INFO : Log.i(..) 说明:信息型消息

    4.DEBUG: Log.d(...) 说明:调试输出:可能被过滤掉

    5.VERBOSE: Log.v(...) 说明:只用于开发..   

    在做开发的时候R文件是一个令人非常头疼的地方,当你不经意去删改R文件里面的一些东西,R文件就会报错,然后就导致你整个项目都会出错,所以处理R类的问题是非常重要的。

    若当你资源编译错误有时出现一些莫名其妙错误的状况的时候,你不妨可以试试以下这几种方法:

    1.重新检查资源文件中XML文件的有效性

    2.清理项目

    3.使用Gradle 同步项目

    4.运行Android Lint

     Android中UI Fragment和Fragment管理器

       

  • 相关阅读:
    struts debug 标签
    No result defined for action com.lk.IndexAction and result success
    记一次jdk升级引起的 Unsupported major.minor version 51.0
    jar hell & elasticsearch ik 版本问题
    Glide图片加载框架小bug
    环信easeui集成:坑总结2018(二)
    Android项目实战(五十一):浅谈GreenDao
    Android项目实战(五十):微信支付 坑总结
    Android项目实战(四十九):Andoird 7.0+相机适配
    环信easeui集成:坑总结2018
  • 原文地址:https://www.cnblogs.com/lsy-lancen/p/5893831.html
Copyright © 2011-2022 走看看