精华内容
下载资源
问答
  • 深入浅出Android注释.pdfAndroidAndroid深入浅出AAnnddrrooiidd1 41 ...

    深入浅出Android注释.pdf

    Android

    Android

    深入浅出AAnnddrrooiidd

    1 4

    1 4

    11入门44

    ANDROID

    ANDROID

    初探AANNDDRROOIIDD4

    2008

    2008

    年末最大的冲击4

    Android

    Android

    AAnnddrrooiidd是什么4

    从创意开始5

    ANDROID

    ANDROID

    安装 AANNDDRROOIIDD 开发工具 7

    InstallAndroid

    InstallAndroid

    IInnssttaallllAAnnddrrooiidd7

    安装流程8

    开启现有工程11

    开启工程11

    导入工程11

    修复工程11

    ANDROID

    ANDROID

    操作 AANNDDRROOIIDD 模拟器12

    Android

    Android

    使用AAnnddrrooiidd 模拟器12

    列出模拟器类型12

    建立模拟器13

    列出已建立的模拟器14

    移除模拟器场景16

    移除模拟器17

    ANDROID

    ANDROID

    建立一个 AANNDDRROOIIDD 程序18

    建立新工程18

    GUI

    GUI

    初识GGUUII界面21

    描述使用者界面21

    GUI

    GUI

    设计GGUUII界面25

    视图(View)25

    查阅文件25

    离线文件25

    视觉化的界面开发工具28

    ID

    ID

    获取标识IIDD29

    存取识别符号29

    新增XML文件33

    解读程序流程35

    解读程序流程35

    BMI

    BMI

    完成BBMMII程序39

    完成BMI程序39

    43

    43

    初级4433

    重构程序43

    什么是重构43

    MVC

    MVC

    MMVVCC43

    IINTEN

    NTEN

    初识IINNTTEENN

    展开全文
  • Android注释模板和编程规范。
  • 今天要分享的是关于Android注释系统的一些强大功能!! 实践证明,拥有良好的注释是可持续维护的重要标准 比如你直接查阅Activity.java 的源码,将会看到大量绿色的注释,而且仔细观察除了我们常规的注释外还有一些...

    附上Android君


    今天要分享的是关于Android注释系统的一些强大功能!!

    实践证明,拥有良好的注释是可持续维护的重要标准

    比如你直接查阅Activity.java 的源码,将会看到大量绿色的注释,而且仔细观察除了我们常规的注释外还有一些特定语法的注释。下面贴上一段来自官方的例子:

    /**
     * An activity is a single, focused thing that the user can do.  Almost all
     * activities interact with the user, so the Activity class takes care of
     * creating a window for you in which you can place your UI with
     * {@link #setContentView}.  While activities are often presented to the user
     * as full-screen windows, they can also be used in other ways: as floating
     * windows (via a theme with {@link android.R.attr#windowIsFloating} set)
     * or embedded inside of another activity (using {@link ActivityGroup}).
     *
     * There are two methods almost all subclasses of Activity will implement:
     *
     * 
      *
    • {@link #onCreate} is where you initialize your activity. Most * importantly, here you will usually call {@link #setContentView(int)} * with a layout resource defining your UI, and using {@link #findViewById} * to retrieve the widgets in that UI that you need to interact with * programmatically. * *
    • {@link #onPause} is where you deal with the user leaving your * activity. Most importantly, any changes made by the user should at this * point be committed (usually to the * {@link android.content.ContentProvider} holding the data). *
    */

    上面的注释除了用了javadoc的/** 我是注释 **/,还能看到使用了 {@link #我是一个class }类似格式语法以及HTML标签语法,如果想写出优雅的注释,提升代码的可读性和可维护性,就有必要了解下Android支持的一些注释语法了。我这里整理了一些常用的语法供大家学习参考~~~~


    @link语法

    适合在你的注释中引用任意一个类、字段或者方法。

    在使用上比较简单,直接放上使用代码:

    /**
     * 这里要引用一个类 {@link package.MyClass} 
    * 这里要引用一个类里面的子类 {@link package.MyClass.SubClass}
    * 这里要引用一个类里面的方法 {@link package.MyClass#method(Context, Object)} // 注意这里()里面的是方法的参数类型,使用不同的参数签名可以来区别不同的重载方法
    * 这里要引用一个类李曼的字段 {@link package.MyClass#field} // 这里不区分字段是否是public 或者 static,都可以直接引用
    * 这里要引用改类本身的方法或者字段 {@link #method(Context, Object)}和{@link #field} */

    使用这个替代注释中直接写上的类名和方法名!!!这样查看注释能用IDE直接跳转你引用的地方,并且若重构了引用的类、方法或者字段的名称,IDE也会自动替换这个地方的名称~ (如果你碰到经历过年代摧残的代码,你一定遇到过注释中注明的代码早已经不见的情况 -_-|||)


    @linkplain语法

    功能同@link语法,不过可以给显示指定一个别名

    用法可以参考@link,这里贴上不同的地方

    /**
     * 这里要引用一个类 {@linkplain package.MyClass 别名} 
    */

    IDE显示效果如下


    @linkplain语法

    点击别名将跳转到代码处,如果要起别名做注释就用@linkplain替代@link


    @param语法

    适合给方法的参数写说明

    贴上代码

    /**
     * 这是方法的说明
     * @param param1 这里是参数1的说明
     * @param param2 这是是参数2的说明
     */
    void method(int 参数1, int 参数2) { }

    IDE显示效果为


    @param语法


    用这个语法可以简单为方法参数加一些说明,比如说明一些特殊值的传入等~~


    @see语法

    在注释的末尾添加,适合说明需要参考的地方,一般作为补充说明用

    在上面的例子补充注释

    /**
         * 这是方法的说明
         *
         * @param 参数1 这里是参数1的说明
         * @param 参数2 这是是参数2的说明
         *            
         * @see #method()
         * @see #method(int)
         */
        void method(int 参数1, int 参数2) {
    
        }
    
        void method() {
        }
    
        void method(int 参数1) {
        }

    在IDE效果如图


    @see语法


    可以看到底部出现了See Also:的备注说明,我通常用来补充一些关联的相似的地方,如重载方法,可以参考的继承类等~~~


    @deprecated语法

    用于表示该方法已废弃

    上代码

        /**
         * @deprecated 已废弃,建议使用{@link #method(int)} (int)}
         */
        void method() {
        }

    这样在代码调用的时候IDE将会给出提示


    @deprecated语法


    接着童鞋们查看注释时候我们的@link标签就会引导使用者去使用新的方法~~ 是不是很赞呢,妈妈再也担心我用了废弃的代码了。 Android SDK很多老API都会用这个语法做标注的


    @exception语法

    适合用于说明可能抛出的异常类型,以及在什么情况下抛出异常
    放上一段参数校验代码

        /**
         * 这是方法说明
         * @param age
         * @exception IllegalArgumentException 校验参数有问题将抛出,如age < 0
         */
        void method(int age) {
            if (age < 0) {
                throw new IllegalArgumentException("age must >= 0!!!");
            }
            // TODO ...
        }

    查看IDE注释,如图


    exception语法


    对于异常部分将有Throws:引出,完美提示我为何要抛你异常!!!~~~


    语法

    适合在你的注释中放上一段高亮的代码

    比如

    //**
     * 以下是本类方法的执行顺序
     * 
     * public class Activity extends ApplicationContext {
     *     protected void onCreate(Bundle savedInstanceState);
     *
     *     protected void onStart();
     *
     *     protected void onRestart();
     *
     *     protected void onResume();
     *
     *     protected void onPause();
     *
     *     protected void onStop();
     *
     *     protected void onDestroy();
     * }
     * 
     */

    然后在你查看这段注释时,IDE将会显示成


    高亮的代码段


    语法

    用于注释的换行

    在敲注释的时候可能你会碰到用enter键换行无效的情况,这个时候用
    在行的尾部就行了:

    /**
     * 第一行
    * 第二行
    * 最后一行 */

    语法

    除了HTML本身支持链接到一个特定URL,也能起到跟<@link>语法一样的引用作用。

    直接上代码:

    /**
     * 
     */
    

    效果如图


    通过IDE点击超链接将直接跳转到对应代码位置~~~~适合给引用起别名,也能很好的放在HTML语法里面


    语法

    用于给注释加小标题

    上代码,这里用的是

    /**
     * 

    Class Info

    * 我是Class Info内容 *

    Usages

    * 我是Usages内容 *

    Help

    * 我是Help内容 */

    IDE查看效果如图:


    语法

    @docRoot语法

    这里是直接用Stack Overflow大神的说法

    Here @docRoot is used to compose a reference to an html tutorial. In my case @docRoot translates to the following path:
    file:/C:/Users//AppData/Local/Android/android-sdk/docs/reference/

    贴上Stack Overflow链接, 意思大致是说这里可以引用到本地安装的sdk的docs位置下。通常是用来在注释中引入docs的资源。
    这里给上官方的注释:

    /**
     * 

    See the Security and Permissions* document for more information on permissions and security in general. */

    IDE查看效果为


    @docRoot语法

    小结

    Android自带的注释语法太多,这里只列了一些常用的,欢迎看到的童鞋留言分享好用的注释语法~~~
    (写多了br我这里是用br换行的。。。啦啦啦)

    Android除了@语法还能支持基本所有的HTML标签,不过只有合理使用才能写出完美注释,减少团队合作的成本,提高代码可读性.


    本文转自:https://juejin.im/entry/5852390d128fe1006d997f24

    展开全文
  • android注释快捷键

    千次阅读 2016-10-25 16:45:58
    1、 注释添加和取消  (1)添加:选中你要加注释的区域,用ctrl+shift+C 会加上//注释  (2)取消:选中你要加注释的区域,ctrl+shift+C去掉注释 2、--> 注释添加和取消  (1)添加:先把你要注释...

    1、<!-- XXX --> 注释添加和取消

      (1)添加:选中你要加注释的区域,用ctrl+shift+C 会加上//注释

      (2)取消:选中你要加注释的区域,ctrl+shift+C去掉注释

    2、<!-- XXX --> 注释添加和取消

      (1)添加:先把你要注释的东西选中,用shit+ctrl+/ 会加上/* */注释

      (2)取消:选中你要加注释的区域,ctrl+shift+\去掉注释

    展开全文
  • Android注释开发

    2016-06-21 10:18:22
    从jdk1.5开始java提供了注释功能,允许开发者定义和使用自己的注释类型。 该功能由一个定义注释类型的语法和描述一个注释声明的语法,读取注释的API;一个使用注释修饰的class文件和一个注释处理工具组成。首先,其...

    从jdk1.5开始java提供了注释功能,允许开发者定义和使用自己的注释类型。
    该功能由一个定义注释类型的语法和描述一个注释声明的语法,读取注释的API;一个使用注释修饰的class文件和一个注释处理工具组成。

    首先,其语法定义形式为@interface,其含义为声明一个注释类的关键字。

    使用@interface表示我们已经继承了java.lang.annotation.Annotation类,这是一个注释的基类接口。就好像Objcet类.
    annotation 是注释 注解的意思

    其语法还有一条规定:在定义注释时,不能继承其他的注释或接口。

    public @interface MyAnnotation{
    }

    然后通常在使用时我们都会给这个注释类加上两个注释
    @Target(ElementType.FIELD)
    @Retention(RetentionPolicy.RUNTIME)
    ElementType、RetentionPolicy 是两个枚举类,ElementType.FIELD表示我们需要注释的是一个字段。

    ElementType枚举常量摘要
    ANNOTATION_TYPE 注释类型声明
    CONSTRUCTOR 构造方法声明
    FIELD 字段声明
    LOCAL_VARIABLE 局部变量声明
    METHOD 声明方法
    PACKAGE 包声明
    TYPE 类接口或枚举声明

    RetentionPolicy 枚举常量摘要
    CLASS 编译器将把注释记录在类文件中,但在运行时VM不需要保留注释
    RUNTIME 编译器将把注释记录在类文件中,在运行时VM将保留注释,因此可以反射性地读取.
    SOURCE 编译器要丢弃的注释

    使用注释

    //声明注释
    @Target(Element.FIELD)
    @Retention(RetentionPolicy.RUNTIME)
    public @interface BindView{
        public int id();
        public boolean click() default false;
    }

    使用注释

    @BindView(id=R.id.x,click=true) private TextView t;

    我们可以看到。除了明显减少了代码量,还使得代码结构更佳清晰.
    其中,定义部分的id()表示注释接受一个int类型的数据作为id对应的值
    同理,定义部分的click表示接受一个Boolean类型的数据作为click对应的值,还可以设置一个默认值使用default修饰.

    处理注释:
    我们已经知道了注释怎么定义和使用,接下来就应该知道怎么处理了。
    bindView注释可以接受一个int类型的值和一个boolean类型的值.那么这两个值接收了以后如何获取呢?
    其实获取的方法很简单就是通过一个bindView类型的对象,调用这个对象来自声明中定义的两个方法->id()或click()方法。

    现在有一个问题,注释类型是不能直接new 对象的,那么这个bindView对象从那里来呢?

    这是就需要用到Java的反射机制。我们知道每一个继承自object类的类都会继承一个getClass()方法,下面看一下这个方法的原型。

     /**
         * Returns the unique instance of {@link Class} that represents this
         * object's class. Note that {@code getClass()} is a special case in that it
         * actually returns {@code Class<? extends Foo>} where {@code Foo} is the
         * erasure of the type of the expression {@code getClass()} was called upon.
         * <p>
         * As an example, the following code actually compiles, although one might
         * think it shouldn't:
         * <p>
         * <pre>{@code
         *   List<Integer> l = new ArrayList<Integer>();
         *   Class<? extends List> c = l.getClass();}</pre>
         *
         * @return this object's {@code Class} instance.
         */
        public final native Class<?> getClass();

    这是一个native方法,根据注释我们知道,这个方法返回的是该类的Class对象,同时也是该类的二进制对象。Class中有一个方法叫getDeclareFields(),是用来返回这个类的全部字段,返回类型是Field[]通过Field对象的getAnnotation(Class

    public static void initBindView(Object currentClass,View courceView)
    {//通过反射获取到全部属性,反射的字段可能是一个类(静态)字段或实例字段
        Field[] fields=currentClass.getClass.getDeclareFields();
        for(Field fidld:fields)
        {
        BindView bindView=field.getAnnotation(BindView.class);
            if(bindView!=null)
            {
                    int viewId=bindView.id();
                    boolean clickIs=bindView.click();   
                    try{
                            field.getAccessible(true);
                            if(clickIs)
                            {
                                sourceView.findViewById(viewId).setOnClickListener((OnClickListener)currentClass)
                            }
                            fields.set(currentClass,sourceView.findViewById(viewId))
    
                    }catch(Exception e)
                    {
                        e.printStachTrace();
                    }
            }   
        }
    }

    这是一个静态的方法可以随时调用
    可以在你的BaseActivity中进行是用直接传入activity对象

    其实安卓中的注释式绑定控件(也是所谓的IOC控制反转在安卓中的一种应用)其实本质的使用就是java基础中反射的使用值得一提的是,反射执行的效率是很低的。
    如果不是必要,应当尽量减少反射的使用,因为它会大大的拖累你应用的执行效率。

    展开全文
  • 2016 Android注释技巧 Android Studio

    千次阅读 2016-10-08 14:27:05
    不懂的就要学,这就是成长;一些东西可能很偏,但是不代表可以放弃。掌握20%的技术可以让你...注释是每个代码当中都要使用到的帮助信息,而且专业的注释也可以大大的提高我们代码的可读质量。注释是对一个方法或
  • Android注释规范

    千次阅读 2015-12-02 12:46:17
    1、文件头注释(用/* */)  每个文件的文件头都必须做文件头注释,这样可以清楚地知道这个文件的作用。 2、方法头注释(用/* */)  每个成员方法的方法头都必须做方法头注释,这样在其他地方调用该方法的时候,...
  • Android注释技巧

    2015-09-19 21:55:23
    1.如何快速生成文档注释光标定位到要注释的类、属性或者函数上,然后右键 -> Source -> Generate Element Comment,我更喜欢用快捷键 Alt + Shift + J,就能自动生成注释了。2. 文档注释中字段的含义(重点)@author...
  • 今天重新安装studio的时候竟然发现不会写注释模板了这里记录一下 下面是注释模板标准/** * * @function fieldfield * @author 你的名字 * @time datedate timetime * **/步骤: 1,新建一个模板取名cc ,2,...
  • Android注释的方法

    千次阅读 2014-11-16 19:58:21
    1.选中你要加注释的区域,用ctrl+shift+C 会加上//注释 2.先把你要注释的东西选中,用shit+ctrl+/ 会加上/* */注释 3.要修改在eclispe中的命令的快捷键方式我们只需进入windows -> preference -> General -> key...
  • Java和Android注释规范

    2015-07-23 11:33:30
    1、 文件头注释 每一个文件的文件头都必须做文件头注释。文件头注释范例如下: /* * 文件名:LoginActivity * 描 述:对用户 * 作 者: * 时 间: * 版 权: */ 2、 方法头注释 每一个成员方法...
  • java/android注释

    2014-02-23 13:15:12
    eclipse中编辑java或C/C++文件时,注释的快捷键均为 "CTRL + / ",编辑xml文件时,该快捷键无效。 eclipse XML 注释:CTRL + SHIFT + / 撤销注释:CTRL + SHIFT + \
  • 如果看过,你注意过源码上面的注释么?你知道为什么看源码注释有些标识的参数可以直接点击跳转么?先出个题目,定义一个最简单的Person类,三个属性,一个name,一个age,一个性别,一个带所有属性参数的构造函数,...
  • android 注释常用标签

    2015-05-07 08:25:00
    javadoc: {@link ActivityGroup} 链接到包、类; {@link #setContentView} 用#链接到类成员; @return View The current View with focus or null....@see android.view.Window#getCurrentFocus @param i...
  • key code: @see <a href="http://www.google.com">Google</a>@see <a href="URL#value">label</a> : Adds a link as defined by URL#value. The URL#value is a relative or absolute URL. The Javadoc tool ...
  • 通过菜单 Window->Preference 打开参数设置面板,然后选择: Java -> Code Style -> Code Templates
  • 然后发现查看官方注释的难度除了对英语的理解外,比较难懂的是一些关键字的作用,看到CSDN上还比较少有大牛有写下相关的文章,为了让一些和本人一样对注释中的关键字感到疑惑的初学者看到这方面的解析,决定写下这篇...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 144,548
精华内容 57,819
关键字:

安卓注释