AndroidManifest.xml是Android应用程序最重要的配置文件。


入口文件和intent-filter
<application        android:icon="@drawable/icon"        android:label="@string/app_name"        android:theme="@android:style/Theme.Holo.Light"        android:uiOptions="splitActionBarWhenNarrow">        <activity            android:name="net.micode.fileexplorer.FileExplorerTabActivity"            android:configChanges="screenSize|keyboardHidden"            android:screenOrientation="sensor"            android:uiOptions="splitActionBarWhenNarrow">            <intent-filter >                <action android:name="android.intent.action.MAIN" />                <category android:name="android.intent.category.DEFAULT" />                <category android:name="android.intent.category.LAUNCHER" />            </intent-filter>              </activity></application>




Intent和IntentFilter,昨天才复习了下,大致的意思是:Intent意图,作为一种编程模式,实现程序解耦,
而IntentFilter可以过滤Intent。
android.intent.action.MAIN表明是“入口”,
android.intent.category.LAUNCHER表明“决定应用程序是否显示在程序列表里”。


还配置了2个Activity和1个Service。
<activity android:name=".SearchActivity" ></activity> <activity            android:label="@string/menu_setting"            android:launchMode="singleTop"            android:name=".FileExplorerPreferenceActivity"            android:theme="@android:style/Theme.Holo.Light.NoActionBar" >        </activity><service android:name=".FTPServerService" />






程序启动之后,进入FileExplorerTabActivity的界面。
onCreate函数里,完成ViewPager和TabsAdapter2个关键对象的构造。
最重要的是TabsAdapter。


还是用自己理解来表述这个问题吧~
FileExplorerTabActivity这个Activity就是“Controller”控制器。
ViewPager这个View就是“View”视图。
TabsAdapter就是Model,提供数据~


mTabsAdapter = new TabsAdapter(this, mViewPager);mTabsAdapter.addTab(bar.newTab().setText(R.string.tab_category),FileCategoryActivity.class, null);mTabsAdapter.addTab(bar.newTab().setText(R.string.tab_sd),FileViewActivity.class, null);mTabsAdapter.addTab(bar.newTab().setText(R.string.tab_remote),ServerControlActivity.class, null);bar.setSelectedNavigationItem(PreferenceManager.getDefaultSharedPreferences(this).getInt(INSTANCESTATE_TAB,Util.CATEGORY_TAB_INDEX));




Tab类型的适配器,增加了3个选项,分别是FileCategoryActivity分类浏览、
FileViewActivity文件管理、ServerControlActivity远程管理。
其中前2个主要是小米自身的实现,后1个用到了刚刚配置的FTPService,主要代码是另外一个开源产品SwiFTP。


然后就是相关事件的绑定和切换了,Tab切换由TabActivity自身响应,其它相关事件由FileCategoryActivity等响应。


总结
Android、Swing、Windows、Web,可视化界面开发GUI类型的应用程序开发,流程类似。
1.做好程序配置~
.xml、.properties、.conf、.ini等
2.启动流程,初始化~
一种类型的应用程序,启动流程基本是固定的~
标准往往是强势的一个公司制定的~
身为程序员,只能按照标准一步步来哦~
3.展示界面
Android:移动端
Windows/Swing:PC端
Web:Web
4.响应事件
Web端:URL超链接点击、JS按钮等
Android/Windows/Swing:按钮点击等




参考资料:
1.http://liuzhichao.com/p/506.html
2.http://zhidao.baidu.com/link?url=vkiGaNN8R2s5-SCBQYtL1pGJxMTOJTjXcp97rFBQ8arJo9gmwoRFSfbfQw06JJ6QfkwgVZGSnqN3cNi5ZYqYhK

更多相关文章

  1. 新建Android项目
  2. 获取应用程序中的Activity,Service等
  3. Android(安卓)JNI直接调用驱动程序
  4. ListView监听OnItemClick无响应
  5. Android---SharedPreferences使用
  6. SharedPreference用法
  7. Android(安卓)退出整个程序代码
  8. [置顶] 整理最全的Android开发工程师面试题,面试题详解。java、An
  9. Android(安卓)activity生命周期的几种场景

随机推荐

  1. Android(安卓)异步消息处理机制(Handler
  2. Android(安卓)开发者的 Flutter(三) —— F
  3. Android界面编程——Android基本控件
  4. Android开发者面试一百题
  5. android + red5 + rtmp
  6. 推荐给Android开发者的抢手书单
  7. Android消息机制之ThreadLocal浅析
  8. android中SELINUX规则分析和语法简介
  9. 解决Android(安卓)SDK Manager不能更新的
  10. Android(安卓)Weak Handler:可以避免内存