位置: 编程技术 - 正文

Android - Designtime Layout Attributes & Tools Attributes

编辑:rootadmin
Designtime Layout AttributesAs of Android Studio 0.2., the layout rendering (used in both the layout editor as well as the XML editor layout preview window), supports designtime layout attributes.These are attributes which are used when the layout is rendered in the tool, but have no impact on the runtime. This is useful if you for example want to put sample data in your textfields for when you are editing the layout, but you don't want those attributes to affect your running app.To use designtime attributes, first make sure you have the tools namespace defined in your layout:<LinearLayout xmlns:android=" xmlns:tools=" android:layout_width="match_parent" ...The tools namespace is a specially recognized namespace by the Android tools, so all the attributes you define on view elements in the tools-namespace will be automatically stripped when the application is packaged and there is no runtime overhead.Then, to for example set the text of a text field, use the same attribute as you would from the Android framework, but use the tools: namespace rather than the android: namespace: <TextView android:text="Name:" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <EditText tools:text="John Doe" android:layout_width="wrap_content" android:layout_height="wrap_content" />In the above, the Name label is using the normal text attribute, and will be shown at runtime. However, the text field is using a designtime attribute, so it will appear in the tool, but not at runtime. In general, you can set any Android framework attribute as a designtime attribute; just use the tools: namespace rather than the android: namespace. Note also that you don't have to choose either/or; you can set both the Android namespace attribute (which will be used at runtime) and a tools attribute (which will override the runtime attribute at designtime only).You can also use designtime attributes to unset an attribute while in the tools. For example, there is a bug ( that you cannot use the fastScrollAlwaysVisible attribute on ListViews in the layout editor. However, you may still want that attribute set at runtime. With designtime attributes you can work around it like this: <ListView android:id="@&#;id/listView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:fastScrollAlwaysVisible="true" tools:fastScrollAlwaysVisible=""/>Here's another example; we have a FrameLayout with multiple children, and at designtime we only want to see one of them, let's say the second child: We can use the tools:visibility attribute: <Button android:id="@&#;id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="First" tools:visibility="invisible" /> <Button android:id="@&#;id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Second" tools:visibility="visible" />(Instead of visibility="invisible" you may want to use visibility="gone", depending on your needs.)LimitationsCurrently only overriding existing attributes is supported. We may want to define some additional convenience attributes to make it simple to for example choose which child in a ViewFlipper to show etc.You have to manually edit in your designtime attributes at this timeThey do not appear as an option in for example the layout editor property sheet. Editor code completion does not help you enter these attributes; the easiest way to use them is to first enter them in the Android namespace, and when done replacing the prefix.Note that designtime attributes are supported only for layout files themselves. You cannot use them anywhere else -- in menu XML files, in string resource definitions, etc.Designtime attributes can only be used for framework resources, not custom attributes at this point.See for background or additional requests or commentsTools AttributesAndroid has a dedicated XML namespace intended for tools to be able to record information in XML files, and have that information stripped when the application is packaged such that there is no runtime or download size penalty. The namespace URI and is usually bound to the tools: prefix:<FrameLayout xmlns:android=" xmlns:tools=" android:layout_width="match_parent" android:layout_height="match_parent" > ....This document records our current uses of tools attributes. (NOTE: These may change over time.)tools:ignoreThis attribute can be set on any XML element, and is a comma separated list of lint issue ID's that should be ignored on this element or any of its children, recursively.<string name="show_all_apps" tools:ignore="MissingTranslation">All</string>Used by: Linttools:targetApiThis attribute is like the @TargetApi annotation in Java classes: it lets you specify an API level, either as an integer or as code name, that this element is known to be running on. <GridLayout tools:targetApi="ICE_CREAM_SANDWICH" >Used by: Linttools:localeThis attribute can be set on the root element in a resource value file and should correspond to a language and optionally a region. This will let tools know what language (locale) the strings in the file are assumed to be. For example, values/strings.xml can have this root element:<resources xmlns:tools=" tools:locale="es">Now we know that the language used for strings in the default values folder is Spanish rather than English.Used by: Lint, Studio (to disable spell checking in non-English resource files)tools:contextThis attribute is typically set on the root element in a layout XML file, and records which activity the layout is associated with (at designtime, since obviously a layout can be used by more than one layout). This will for example be used by the layout editor to guess a default theme, since themes are defined in the Manifest and are associated with activities, not layouts. You can use the same dot prefix as in manifests to just specify the activity class without the full application package name as a prefix.<android.support.v7.widget.GridLayout xmlns:android=" xmlns:tools=" tools:context=".MainActivity" ... >Used by: Layout editors in Studio & Eclipse, Linttools:layoutThis attribute is typically set in a <fragment> tag and is used to record which layout you want to see rendered at designtime (at runtime, this will be determined by the actions of the fragment class listed by the tag).<fragment android:name="com.example.master.ItemListFragment" tools:layout="@android:layout/list_content" />Used by: Layout editors in Studio & Eclipsetools:listitem / listheader / listfooterThese attributes can be used on a <ListView> (or other AdapterView children like <GridView>, <ExpandableListView> etc) to specify layouts to use for the list items, as well as list headers and list footers, at designtime. The tool will fill in dummy data to show a list with some representative contents. <ListView android:id="@android:id/list" android:layout_width="match_parent" android:layout_height="match_parent" tools:listitem="@android:layout/simple_list_item_2" />Used by: Layout editors in Studio & Eclipsetools:showInAttribute set on the root element of a layout that <include>'ed by another layout. This allows you to point to one of the layouts which includes this layout, and at designtime this included layout will be rendered with the outer layout surrounding it. That allows you to view and edit the layout "in context". Requires Studio 0.5.8 or later. More information in the release announcement.<?xml version="1.0" encoding="utf-8"?><TextView xmlns:android=" xmlns:tools=" android:text="@string/hello_world" android:layout_width="wrap_content" android:layout_height="wrap_content" tools:showIn="@layout/activity_main" />Used by: Layout editor in Studiotools:menuAttribute set on the root element of a layout to configure the menus to be shown in the Action Bar. Android Studio tries to figure out which menus to use in the ActionBar by looking at the onCreateOptionsMenu() method in the activity linked to the layout (by tools:context). This allows you to override that search and explicitly state which menus to show. The value is a comma separated list of ids (without @id/ or any such prefix). You can also use the file names of the menu xml without the .xml extension. Requires Studio 0.8.0 or later.<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android=" xmlns:tools=" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" tools:menu="menu1,menu2" />Used by: Layout editor in Studiotools:actionBarNavModeAttribute set on the root element of a layout to configure the navigation mode used by the Action Bar. Possible values include: "standard", "list" and "tabs" Requires Studio 0.8.0 or later.<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android=" xmlns:tools=" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" tools:actionBarNavMode="tabs" />Used by: Layout editor in Studioref1:

推荐整理分享Android - Designtime Layout Attributes & Tools Attributes,希望有所帮助,仅作参考,欢迎阅读内容。

Android - Designtime Layout Attributes & Tools Attributes

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

Android异常 本文重在Java中异常机制的一些概念。写本文的目的在于方便我很长时间后若是忘了这些东西可以通过这篇文章迅速回忆起来。1.异常机制1.1异常机制是

FrameLayout(框架布局) 框架布局是最简单的布局形式。所有添加到这个布局中的视图都以层叠的方式显示。第一个添加的控件被放在最底层,最后一个添加到框架布局中的视

android 画画板 importjava.io.File;importjava.io.FileNotFoundException;importjava.io.FileOutputStream;importandroid.net.Uri;importandroid.os.Bundle;importandroid.os.Environment;importandroid.app.Activity;importandroi

标签: Android - Designtime Layout Attributes & Tools Attributes

本文链接地址:https://www.jiuchutong.com/biancheng/376533.html 转载请保留说明!

上一篇:Android 手机影音 学习过程记录(三)(安卓版影音播放器哪个好用)

下一篇:Android异常(Android异常重启保护机制)

  • 山西税务年度申报在晋税通中怎么申报
  • 认缴制股权转让印花税的计税依据是什么
  • 买赠怎么做会计分录
  • 合并报表是把资产负债表相加吗
  • 企业所得税营业收入是含税还是不含税
  • 企业所得税1季度申报季初从业人数个税所属期12月
  • 快递费专票可以报销吗
  • 给员工发开门红包的通知
  • 代扣个人所得税现金流入哪个科目?
  • 旅游费用可以报销吗
  • 会计法对填制审核会计凭证有哪些规定
  • 非货币资产交换的会计处理原则
  • 预缴企业所得税会计处理
  • 加工企业购入辅料记入什么科目?
  • 固定资产并账
  • 个人保证金业务
  • 什么是个体工商户业主
  • 营改增后发票上必须要开具税收分类编码吗?
  • 增值税缴纳地方怎么填
  • 买车的增票可以分两次吗
  • 在建工程一次还是多次
  • 普票红字发票怎么写摘要
  • 打包贷款和出口信贷的区别和联系
  • win10怎么启动双系统
  • 工商年报社保需要多少钱
  • 借条复印件可以起诉吗还有转账记录
  • 处置控制的子公司有哪些
  • 事业单位收到拨入的工资怎么做账
  • 增值税价外费用如何开票
  • 出租设备收取租金合法吗
  • 融资租入固定资产的入账价值
  • 第一部塞班手机
  • 成本法的优点是计算较为简便,缺点是
  • mmdetection optimizer
  • 两借两贷属于复合会计分录吗
  • centos 安装php
  • 成本价低于现价 应该卖吗
  • 前端好看的颜色
  • python%s
  • lincom命令
  • 购买方如何开具红字发票给销售方
  • dedecms进入数据库
  • 分类信息有哪些网站
  • phpcms怎么用
  • SQLite教程(十二):锁和并发控制详解
  • 外勤会计是做什么的
  • 公司股东向银行货款,与私人财产有没有关系
  • 固定资产的货币时间价值
  • 计算企业所得税分录
  • 上年结转会计分录
  • 物业公司代收取暖费怎么缴纳税额
  • 员工休产假不发工资违法吗
  • 建筑行业跨期收益怎么算
  • 验资户和基本户账号一致么
  • 如何理解预付年金终值期数和系数和记忆方法
  • 单位内部部门之间人员调整
  • 附表1是什么意思
  • 其他业务收入与其他业务成本的关系
  • 暂估出口收入如何计算
  • 接到国外的电话是怎么回事
  • 工业企业建立账套
  • 运行软件时遇到的问题
  • FreeBSD下zfs: failed with error 6错误如何解决?
  • 英雄联盟win8
  • win10怎么禁止用户安装程序
  • Red Hat Enterprise Linux 5.X的图形安装教程
  • ubuntu sudo not found
  • cpu numa
  • linux ed
  • win10 预览窗口
  • javascript编程技术
  • unity outline性能
  • web应用程序开源框架
  • Python for Informatics 第11章之正则表达式(四)
  • 郑州地方税务局网站官网
  • 上海ca证书税务的怎么开通
  • 民办非营利医院所得税
  • 广东广电网络投诉电话
  • 未办理税务登记取得专票抵扣
  • 文件清理规则
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设