AndroidUI设计模板Dashboard及ActionBar的应用

【译文】Action Bar及Dashboard能在大多数Android程序项目中为用户提供界面设计图案。

创新互联建站专业为企业提供雄县网站建设、雄县做网站、雄县网站设计、雄县网站制作等企业网站建设、网页设计与制作、雄县企业网站模板建站服务,十载雄县做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

Dashboard项目组已经开始着手于一个项目,以帮助开发者们更快地使他们的项目步入轨道。这一项目的目的是将可在不同UI模板上使用的代码收集并整合起来。我以Google IO会议上的Android应用程序为基础,去掉冗余的代码,以使这些精简过的好用的部分更易于理解。

我在做的项目可以在下面的谷歌代码网站中找到.

目前该项目只进行一项工作,其成果将同时作用于Dashboard及Action bar。

实施指南

让所有的Android应用程序都能同时支持纵向及横向显示模式,这一点非常重要。尽管许多布局方案在编辑正确的前提下,都可以自动实现对纵向、横向显示模式的支持,但Dashboard所制作的布局还做不到这一点。为了保证这两种模式下都具备充足的可用空间,我们需要编写两个单独的布局XMLs。只要我们将相同的布局XML文件放入正确的文件夹并提交给Android系统,系统框架将在运行时自动选择合适的显示方式。

支持不同方向下的不同布局的构架范例

纵向布局XML代码

 
 
 
 
  1. dashboard.xml:  
  2.  
  3.  
  4.  
  5.  
  6.     android:id="@+id/home_root" 
  7.     android:orientation="vertical" 
  8.     android:layout_width="fill_parent" 
  9.     android:layout_height="fill_parent"> 
  10.  
  11.      
  12.         
  13.             android:contentDescription="@string/description_logo" 
  14.             android:src="@drawable/title_logo" /> 
  15.  
  16.          
  17.  
  18.          
  19.         
  20.             android:id="@+id/btn_title_refresh" 
  21.             android:contentDescription="@string/description_refresh" 
  22.             android:src="@drawable/ic_title_refresh" 
  23.             android:onClick="onActionBarButtonClick" /> 
  24.         
  25.             android:id="@+id/title_refresh_progress" 
  26.             android:visibility="gone" /> 
  27.  
  28.          
  29.         
  30.             android:contentDescription="@string/description_search" 
  31.             android:src="@drawable/ic_title_search" 
  32.             android:onClick="onActionBarButtonClick" /> 
  33.      
  34.  
  35.     
  36.         android:orientation="vertical" 
  37.         android:layout_width="fill_parent" 
  38.         android:layout_height="wrap_content" 
  39.         android:layout_weight="1" 
  40.         android:padding="6dip"> 
  41.         
  42.             android:orientation="horizontal" 
  43.             android:layout_width="fill_parent" 
  44.             android:layout_height="wrap_content" 
  45.             android:layout_weight="1"> 
  46.             
  47.                 style="@style/HomeButton" 
  48.                 android:onClick="onActionOneClick" 
  49.                 android:text="@string/dashboard_action" 
  50.                 android:drawableTop="@drawable/dashboard_button_selector"/> 
  51.             
  52.                 style="@style/HomeButton" 
  53.                 android:onClick="onActionTwoClick" 
  54.                 android:text="@string/dashboard_action" 
  55.                 android:drawableTop="@drawable/dashboard_button_selector"/> 
  56.          
  57.  
  58.         
  59.             android:orientation="horizontal" 
  60.             android:layout_width="fill_parent" 
  61.             android:layout_height="wrap_content" 
  62.             android:layout_weight="1"> 
  63.             
  64.                 style="@style/HomeButton" 
  65.                 android:onClick="onActionThreeClick" 
  66.                 android:text="@string/dashboard_action" 
  67.                 android:drawableTop="@drawable/dashboard_button_selector"/> 
  68.             
  69.                 style="@style/HomeButton" 
  70.                 android:onClick="onActionFourClick" 
  71.                 android:text="@string/dashboard_action" 
  72.                 android:drawableTop="@drawable/dashboard_button_selector"/> 
  73.          
  74.  
  75.         
  76.             android:orientation="horizontal" 
  77.             android:layout_width="fill_parent" 
  78.             android:layout_height="wrap_content" 
  79.             android:layout_weight="1"> 
  80.             
  81.                 style="@style/HomeButton" 
  82.                 android:onClick="onActionFiveClick" 
  83.                 android:text="@string/dashboard_action" 
  84.                 android:drawableTop="@drawable/dashboard_button_selector"/> 
  85.             
  86.                 style="@style/HomeButton" 
  87.                 android:onClick="onActionSixClick" 
  88.                 android:text="@string/dashboard_action" 
  89.                 android:drawableTop="@drawable/dashboard_button_selector"/> 
  90.  
  91.          
  92.      
  93.  
  94.     
  95.         android:id="@+id/now_playing_loading" 
  96.         android:layout_width="fill_parent" 
  97.         android:layout_height="@dimen/now_playing_height" 
  98.         android:orientation="horizontal" 
  99.         android:background="#eee" 
  100.         android:gravity="center"> 
  101.         
  102.             style="?android:attr/progressBarStyleSmall" 
  103.             android:layout_width="wrap_content" 
  104.             android:layout_height="wrap_content" 
  105.             android:paddingRight="6dip" 
  106.             android:indeterminate="true"/> 
  107.         
  108.             android:layout_width="wrap_content" 
  109.             android:layout_height="wrap_content" 
  110.             android:textSize="@dimen/text_size_small" 
  111.             android:text="@string/now_playing_loading"/> 
  112.      
  113.  
  114.  

浏览模式XML代码

 
 
 
 
  1. dashboard.xml:  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.     android:id="@+id/home_root" 
  8.     android:orientation="vertical" 
  9.     android:layout_width="fill_parent" 
  10.     android:layout_height="fill_parent"> 
  11.  
  12.  
  13.      
  14.         
  15.             android:src="@drawable/title_logo" /> 
  16.  
  17.  
  18.          
  19.  
  20.  
  21.          
  22.         
  23.             android:id="@+id/btn_title_refresh" 
  24.             android:src="@drawable/ic_title_refresh" 
  25.             android:onClick="onActionBarButtonClick" /> 
  26.         
  27.             android:id="@+id/title_refresh_progress" 
  28.             android:visibility="gone" /> 
  29.  
  30.  
  31.          
  32.         
  33.             android:src="@drawable/ic_title_search" 
  34.             android:onClick="onActionBarButtonClick" /> 
  35.      
  36.  
  37.  
  38.     
  39.         android:orientation="vertical" 
  40.         android:layout_width="fill_parent" 
  41.         android:layout_height="wrap_content" 
  42.         android:layout_weight="1" 
  43.         android:padding="6dip"> 
  44.         
  45.             android:orientation="horizontal" 
  46.             android:layout_width="fill_parent" 
  47.             android:layout_height="wrap_content" 
  48.             android:layout_weight="1"> 
  49.             
  50.                 style="@style/HomeButton" 
  51.                 android:onClick="onActionOneClick" 
  52.                 android:text="@string/dashboard_action" 
  53.                 android:drawableTop="@drawable/dashboard_button_selector"/> 
  54.             
  55.                 style="@style/HomeButton" 
  56.                 android:onClick="onActionTwoClick" 
  57.                 android:text="@string/dashboard_action" 
  58.                 android:drawableTop="@drawable/dashboard_button_selector"/> 
  59.             
  60.                 style="@style/HomeButton" 
  61.                 android:onClick="onActionThreeClick" 
  62.                 android:text="@string/dashboard_action" 
  63.                 android:drawableTop="@drawable/dashboard_button_selector"/> 
  64.          
  65.       
  66.         
  67.             android:orientation="horizontal" 
  68.             android:layout_width="fill_parent" 
  69.             android:layout_height="wrap_content" 
  70.             android:layout_weight="1"> 
  71.             
  72.                 style="@style/HomeButton" 
  73.                 android:onClick="onActionFourClick" 
  74.                 android:text="@string/dashboard_action" 
  75.                 android:drawableTop="@drawable/dashboard_button_selector"/> 
  76.             
  77.                 style="@style/HomeButton" 
  78.                 android:onClick="onActionFiveClick" 
  79.                 android:text="@string/dashboard_action" 
  80.                 android:drawableTop="@drawable/dashboard_button_selector"/> 
  81.             
  82.                 style="@style/HomeButton" 
  83.                 android:onClick="onActionSixClick" 
  84.                 android:text="@string/dashboard_action" 
  85.                 android:drawableTop="@drawable/dashboard_button_selector"/> 
  86.          
  87.      
  88.  
  89.  

其它实用项目

在Android系统中另有许多实用项目,以使开发者可以很容易地获取兼容性许可。

iosched - Google IO app by Google

这个项目试图提供一个在应用程序上实现Dashboard及Action bar用户设计模块的完整范例,这是个相当大的工程。有鉴于此,如果你只需要兼容Dashboard或Action bar工具的设计成果,我建议你使用android-ui-patterns(android用户模块工具)。

GreenDroid library

源自网络的项目目标列表

◆避免在重复拷贝相同的代码上浪费时间

◆尝试使Android上的不同应用程序更加相似

◆帮助开发者构建功能强大的应用程序

◆充分利用Android系统框架的功能

◆尽可能多地使用XML

原文地址

【译稿,非经授权谢绝转载,合作媒体转载请注明原文出处、作者及译稿和译者!】

本文名称:AndroidUI设计模板Dashboard及ActionBar的应用
网页地址:http://www.gawzjz.com/qtweb/news49/164649.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联