1 <?xml version="1.0" encoding="utf-8"?>
4 * Copyright (C) 2008 The Android Open Source Project
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
20 <!-- WARNING !!! THIS IS A MOCK FILE. DO NOT USE FOR DOCUMENTATION PURPOSES.
21 This file has been trimmed down to only extract a number of interesting cases
27 - some attributes which format are defined in Theme
28 - orientation, gravity and layout_gravity defined before they are used
30 - ViewGroup_MarginLayout
35 Note that TableLayout does not have a TableLayout_Layout definition here
36 where these is a class TableLayout.LayoutData.
39 <!-- These are the standard attributes that make up a complete theme. -->
40 <declare-styleable name="Theme">
42 <!-- Defines the scrollbars size. -->
43 <attr name="scrollbarSize" format="dimension" />
48 <!-- Standard orientation constant. -->
49 <attr name="orientation">
50 <!-- Defines an horizontal widget. -->
51 <enum name="horizontal" value="0" />
52 <!-- Defines a vertical widget. -->
53 <enum name="vertical" value="1" />
56 <!-- Specifies how to place an object, both
57 its x and y axis, within a larger containing object. -->
59 <!-- Push object to the top of its container, not changing its size. -->
60 <flag name="top" value="0x30" />
61 <!-- Push object to the bottom of its container, not changing its size. -->
62 <flag name="bottom" value="0x50" />
63 <!-- Push object to the left of its container, not changing its size. -->
64 <flag name="left" value="0x03" />
65 <!-- Push object to the right of its container, not changing its size. -->
66 <flag name="right" value="0x05" />
67 <!-- Place object in the vertical center of its container, not changing its size. -->
68 <flag name="center_vertical" value="0x10" />
69 <!-- Grow the vertical size of the object if needed so it completely fills its container. -->
70 <flag name="fill_vertical" value="0x70" />
71 <!-- Place object in the horizontal center of its container, not changing its size. -->
72 <flag name="center_horizontal" value="0x01" />
73 <!-- Grow the horizontal size of the object if needed so it completely fills its container. -->
74 <flag name="fill_horizontal" value="0x07" />
75 <!-- Place the object in the center of its container in both the vertical and horizontal axis, not changing its size. -->
76 <flag name="center" value="0x11" />
77 <!-- Grow the horizontal and vertical size of the object if needed so it completely fills its container. -->
78 <flag name="fill" value="0x77" />
81 <!-- Standard gravity constant that a child can supply to its parent.
82 Defines how to place an object, both
83 its x and y axis, within a larger containing object. -->
84 <attr name="layout_gravity">
85 <!-- Push object to the top of its container, not changing its size. -->
86 <flag name="top" value="0x30" />
87 <!-- Push object to the bottom of its container, not changing its size. -->
88 <flag name="bottom" value="0x50" />
89 <!-- Push object to the left of its container, not changing its size. -->
90 <flag name="left" value="0x03" />
91 <!-- Push object to the right of its container, not changing its size. -->
92 <flag name="right" value="0x05" />
93 <!-- Place object in the vertical center of its container, not changing its size. -->
94 <flag name="center_vertical" value="0x10" />
95 <!-- Grow the vertical size of the object if needed so it completely fills its container. -->
96 <flag name="fill_vertical" value="0x70" />
97 <!-- Place object in the horizontal center of its container, not changing its size. -->
98 <flag name="center_horizontal" value="0x01" />
99 <!-- Grow the horizontal size of the object if needed so it completely fills its container. -->
100 <flag name="fill_horizontal" value="0x07" />
101 <!-- Place the object in the center of its container in both the vertical and horizontal axis, not changing its size. -->
102 <flag name="center" value="0x11" />
103 <!-- Grow the horizontal and vertical size of the object if needed so it completely fills its container. -->
104 <flag name="fill" value="0x77" />
107 <declare-styleable name="View">
108 <!-- NOTE: View does not have a javadoc. Do not place a comment BEFORE View to make sure it
109 is NOT interpreted as Javadoc -->
111 <!-- Supply an identifier name for this view, to later retrieve it
112 with {@link android.view.View#findViewById View.findViewById()} or
113 {@link android.app.Activity#findViewById Activity.findViewById()}.
115 resource reference; typically you set this using the
116 <code>@+</code> syntax to create a new ID resources.
117 For example: <code>android:id="@+id/my_id"</code> which
118 allows you to later retrieve the view
119 with <code>findViewById(R.id.my_id)</code>. -->
120 <attr name="id" format="reference" />
122 <!-- Supply a tag for this view containing a String, to be retrieved
123 later with {@link android.view.View#getTag View.getTag()} or
124 searched for with {@link android.view.View#findViewWithTag
125 View.findViewWithTag()}. It is generally preferable to use
126 IDs (through the android:id attribute) instead of tags because
127 they are faster and allow for compile-time type checking. -->
128 <attr name="tag" format="string" />
130 <!-- The initial horizontal scroll offset, in pixels.-->
131 <attr name="scrollX" format="dimension" />
133 <!-- The initial vertical scroll offset, in pixels. -->
134 <attr name="scrollY" format="dimension" />
136 <!-- A drawable to use as the background. This can be either a reference
137 to a full drawable resource (such as a PNG image, 9-patch,
138 XML state list description, etc), or a solid color such as "#ff000000"
140 <attr name="background" format="reference|color" />
142 <!-- Boolean that controls whether a view can take focus. By default the user can not
143 move focus to a view; by setting this attribute to true the view is
144 allowed to take focus. This value does not impact the behavior of
145 directly calling {@link android.view.View#requestFocus}, which will
146 always request focus regardless of this view. It only impacts where
147 focus navigation will try to move focus. -->
148 <attr name="focusable" format="boolean" />
150 <!-- Sets the circumstances under which this view will take focus. There are
151 two choices: "weak" or "normal". The default value is "normal" for
152 any focusable views. The focus type only applies if the view
153 has been set to be focusable. -->
154 <attr name="focusType">
155 <!-- This view is focusable, but only if none of its descendants are already focused. -->
156 <enum name="normal" value="0" />
157 <!-- This view will always claim to be focusable. -->
158 <enum name="weak" value="1" />
161 <!-- Controls the initial visibility of the view. -->
162 <attr name="visibility">
163 <!-- Visible on screen; the default value. -->
164 <enum name="visible" value="0" />
165 <!-- Not displayed, but taken into account during layout (space is left for it). -->
166 <enum name="invisible" value="1" />
167 <!-- Completely hidden, as if the view had not been added. -->
168 <enum name="gone" value="2" />
171 <!-- Defines which scrollbars should be displayed on scrolling or not. -->
172 <attr name="scrollbars">
173 <!-- No scrollbar is displayed. -->
174 <flag name="none" value="0x00000000" />
175 <!-- Displays horizontal scrollbar only. -->
176 <flag name="horizontal" value="0x00000100" />
177 <!-- Displays vertical scrollbar only. -->
178 <flag name="vertical" value="0x00000200" />
181 <!-- Sets the width of vertical scrollbars and height of horizontal scrollbars. -->
182 <attr name="scrollbarSize" />
184 <!-- Text to display. (copied from TextView for the extra localization) -->
185 <attr name="text" format="string" localization="suggested" />
189 <!-- Attributes that can be used with a {@link android.view.ViewGroup} or any
190 of its subclasses. Also see {@link #ViewGroup_Layout} for
191 attributes that this class processes in its children. -->
192 <declare-styleable name="ViewGroup">
193 <!-- Defines whether a child is limited to draw inside of its bounds or not.
194 This is useful with animations that scale the size of the children to more
195 than 100% for instance. In such a case, this property should be set to false
196 to allow the children to draw outside of their bounds. The default value of
197 this property is true. -->
198 <attr name="clipChildren" format="boolean" />
199 <!-- Defines the layout animation to use the first time the ViewGroup is laid out.
200 Layout animations can also be started manually after the first layout. -->
201 <attr name="layoutAnimation" format="reference" />
202 <!-- Defines whether a child's animation should be kept when it is over. Keeping
203 the animations is useful with animation whose final state is different from
204 the initial state of the View. This is particularly useful with animation
205 whose fillAfter property is enabled. This property is set to false by default. -->
206 <attr name="persistentDrawingCache">
207 <!-- The drawing cache is not persisted after use. -->
208 <flag name="none" value="0x0" />
209 <!-- The drawing cache is persisted after a layout animation. -->
210 <flag name="animation" value="0x1" />
211 <!-- The drawing cache is persisted after a scroll. -->
212 <flag name="scrolling" value="0x2" />
213 <!-- The drawing cache is always persisted. -->
214 <flag name="all" value="0x3" />
218 <!-- This is the basic set of layout attributes that are common to all
219 layout managers. These attributes are specified with the rest of
220 a view's normal attributes (such as {@link android.R.attr#background},
221 but will be parsed by the view's parent and ignored by the child.
222 <p>The values defined here correspond to the base layout attribute
223 class {@link android.view.ViewGroup.LayoutParams}. -->
224 <declare-styleable name="ViewGroup_Layout">
225 <!-- Specifies the basic width of the view. This is a required attribute
226 for any view inside of a containing layout manager. Its value may
227 be a dimension (such as "12dip") for a constant width or one of
228 the special constants. -->
229 <attr name="layout_width" format="dimension">
230 <!-- The view should be as big as its parent (minus padding). -->
231 <enum name="match_parent" value="-1" />
232 <!-- The view should be only big enough to enclose its content (plus padding). -->
233 <enum name="wrap_content" value="-2" />
236 <!-- Specifies the basic height of the view. This is a required attribute
237 for any view inside of a containing layout manager. Its value may
238 be a dimension (such as "12dip") for a constant height or one of
239 the special constants. -->
240 <attr name="layout_height" format="dimension">
241 <!-- The view should be as big as its parent (minus padding). -->
242 <enum name="match_parent" value="-1" />
243 <!-- The view should be only big enough to enclose its content (plus padding). -->
244 <enum name="wrap_content" value="-2" />
248 <!-- This is the basic set of layout attributes for layout managers that
249 wish to place margins around their child views.
250 These attributes are specified with the rest of
251 a view's normal attributes (such as {@link android.R.attr#background},
252 but will be parsed by the view's parent and ignored by the child.
253 <p>The values defined here correspond to the base layout attribute
254 class {@link android.view.ViewGroup.MarginLayoutParams}. -->
255 <declare-styleable name="ViewGroup_MarginLayout">
256 <attr name="layout_width" />
257 <attr name="layout_height" />
258 <!-- Specifies extra space on the left side of this view.
259 This space is outside this view's bounds. -->
260 <attr name="layout_marginLeft" format="dimension" />
261 <!-- Specifies extra space on the top side of this view.
262 This space is outside this view's bounds. -->
263 <attr name="layout_marginTop" format="dimension" />
264 <!-- Specifies extra space on the right side of this view.
265 This space is outside this view's bounds. -->
266 <attr name="layout_marginRight" format="dimension" />
267 <!-- Specifies extra space on the bottom side of this view.
268 This space is outside this view's bounds. -->
269 <attr name="layout_marginBottom" format="dimension" />
272 <!-- This is a linear layout. -->
273 <declare-styleable name="LinearLayout">
274 <!-- Should the layout be a column or a row? Use "horizontal"
275 for a row, "vertical" for a column. The default is
277 <attr name="orientation" />
278 <attr name="baselineAligned" format="boolean|reference" />
279 <!-- When a linear layout is part of another layout that is baseline
280 aligned, it can specify which of its children to baseline align to
281 (i.e which child TextView).-->
282 <attr name="baselineAlignedChildIndex" format="integer|color" min="0"/>
283 <!-- Defines the maximum weight sum. If unspecified, the sum is computed
284 by adding the layout_weight of all of the children. This can be
285 used for instance to give a single child 50% of the total available
286 space by giving it a layout_weight of 0.5 and setting the weightSum
288 <attr name="weightSum" format="float" />
291 <declare-styleable name="LinearLayout_Layout">
292 <attr name="layout_width" />
293 <attr name="layout_height" />
294 <attr name="layout_weight" format="float" />
295 <attr name="layout_gravity" />
298 <declare-styleable name="TableLayout">
299 <!-- The 0 based index of the columns to stretch. The column indices
300 must be separated by a comma: 1, 2, 5. Illegal and duplicate
301 indices are ignored. You can stretch all columns by using the
302 value "*" instead. Note that a column can be marked stretchable
303 and shrinkable at the same time. -->
304 <attr name="stretchColumns" format="string" />
305 <!-- The 0 based index of the columns to shrink. The column indices
306 must be separated by a comma: 1, 2, 5. Illegal and duplicate
307 indices are ignored. You can shrink all columns by using the
308 value "*" instead. Note that a column can be marked stretchable
309 and shrinkable at the same time. -->
310 <attr name="shrinkColumns" format="string" />
311 <!-- The 0 based index of the columns to collapse. The column indices
312 must be separated by a comma: 1, 2, 5. Illegal and duplicate
313 indices are ignored. -->
314 <attr name="collapseColumns" format="string" />
317 <!-- Test for deprecated attributes. -->
318 <declare-styleable name="DeprecatedTest">
319 <!-- Deprecated comments using delimiters.
320 Ignored. {@deprecated In-line deprecated.} {@ignore Ignored}.
322 <attr name="deprecated-inline" />
324 <!-- Deprecated comments on their own line.
325 @deprecated Multi-line version of deprecated
326 that works till the next tag.
327 @ignore This tag must be ignored
329 <attr name="deprecated-multiline" />
331 <!-- This attribute is not deprecated. -->
332 <attr name="deprecated-not" />
334 <!-- {@deprecated There is no other javadoc here. } -->
335 <attr name="deprecated-no-javadoc" format="boolean" />