android-ApiDemo入口源代码学习及应用

  次阅读 作者:智能小宝 来源:互联网 2016-01-19 12:33 我要评论(0)

一.问题

android的学习中我们经常需要做做一些小demo。

(1)一个demo建立一个项目:

demo多了,项目就多了,会有各种不方便。

(2)于是,建立一个demo项目来,然后,第一个Activity呢,主界面是一个 Activity.里面是各个具体的Activity的入口。

这个时候我的做法是。主界面的布局是一个LinearLayout然后里面多一个具体的Demo就多一个Button入口。

布局如下:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

xmlns:tools="http://schemas.android.com/tools"

android:id="@+id/root_view"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical" >

<Button

android:id="@+id/button1"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text="Demo1" />

<Button

android:id="@+id/button2"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text="Demo2" />

<Button

android:id="@+id/button3"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text="Demo3" />

</LinearLayout>

然后,在代码里为Button注册点击事件,处理事件,启动对应具体的Demo界面。

一般来说,这样的解决方案是够了。

但是有没有简洁,更具有扩展性的解决方案呢?

这个时候,我想到了Android的ApiDemos。我想看看Android自己是怎么做的。

于是我发现了一个一个更优雅更具有技术含量,更具有Android的技术特色的解决方案:

主要是这个Activity子类:

com.example.android.apis.ApiDemos

它也是一个ListActivity子类,整个类文件100多行代码。比较优雅的实现了问题的主要功能。

这是我首先要告诉大家的是,当我们运行ApiDemos时,首次运行看到的界面(我称之为根目录)是ApiDemos这个Activity,

子目录的显示也是这个ApiDemos这个Activity.

提示:其实,如果你自己单步调试下,应该很快就可以了解了。就不用再往下看了。不是吗?

我们知道,根目录显示的入口如下:

清单一:

/-Accessibility

-Animation

-App

-Content

-Graphics

-Media

-NFC

-OS

-Preference

-Text

-Views

本站文章信息来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-1688-302!

人工智能实验室
相关文章相关文章
  • 韩春雨称已能重复实验结果 近期将有消息公布

    韩春雨称已能重复实验结果 近期将有消息公布

  • 未来两年人工智能要怎么走?看这篇就够了

    未来两年人工智能要怎么走?看这篇就够了

  • 无人驾驶汽车如何改变城市生活?听听他们怎么说

    无人驾驶汽车如何改变城市生活?听听他们怎么说

  • 英国研发“杀生”机器人 通过生命体获取能量

    英国研发“杀生”机器人 通过生命体获取能量

网友点评网友点评
阅读推荐阅读推荐

据国外媒体报道,在过去两年内,聊天机器人(chatbot)、人工智能以及机器学习的研发和采用取得了巨大进展。许多初创公司正利用人工智能和...

霍金 视觉中国 图 英国著名物理学家霍金(Stephen Hawking)再次就人工智能(AI)发声,他认为:对于人类来说,强大AI的出现可能是最美妙的...

文|郑娟娟 今年,人工智能(AI) 60岁了。在AI60岁的时候,笔者想要介绍一下AI100,一个刚刚2岁的研究项目,但它的预设寿命是100年,甚至更长...

AlphaGo与李世石的人机大战,为大众迅速普及了人工智能的概念。 但对谷歌而言,除了下围棋,现在的人工智能进展到哪一步了?未来,人工智能...