<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2014 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<resources>
<declare-styleable name="CanvasSettings">
<attr name="preference" format="reference" />
</declare-styleable>
<declare-styleable name="FrameLayoutWithShadows">
<!-- default shadow drawable -->
<attr name="defaultShadow" format="reference"/>
<!-- drawable on bottom of content, note: it requires intrinsic height,
so ColorDrawable does not work, use ShapeDrawable with solid color
instead -->
<attr name="drawableBottom" format="reference"/>
</declare-styleable>
<declare-styleable name="ScrollAdapterView">
<attr name="orientation">
<enum name="horizontal" value="0" />
<enum name="vertical" value="1" />
</attr>
<!-- indicate whether the ScrollAdapterView's child can have focus,
default is true -->
<attr name="itemFocusable" format="boolean" />
<!--
set to 1 (default value) for single row/column, set to > 1 for grid view,
set to 0 for auto adjust rows/columns by widget size.
-->
<attr name="gridSetting" format="integer" />
<!-- space between two items -->
<attr name="space" format="dimension" />
<!-- alternative space size of a selected item, ScrollAdapterView may assign
more (or less) space to the selected item and animate the transition between
multiple items. In a more complicated case: if each item has a different
selectedSize, use ScrollAdapterCustomSize. <p>
The value can be used in two cases: <p>
- when selectedTakesMoreSpace is true: ScrollAdapterView will allocate more
spaces surrounding the focused item. The extra spaces is added to start/end
depending on "scrollItemAlign". <p>
- when selectedTakesMoreSpace is false: ScrollAdapterView will not allocate
more spaces for focused item, but will align the focused item using the value. <p>
In any case, ScrollAdapterView never scale the View or change its width or height,
the view itself is responsible doing the scale in ScrollAdapterTransform or
ScrollAdapterView.OnScrollListener
-->
<attr name="selectedSize" format="dimension" />
<!-- if ScrollAdapterView will use "selectedSize" or ScrollAdapterCustomSize
to add more spaces for selected item-->
<attr name="selectedTakesMoreSpace" format="boolean" />
<!-- describe how to put scroll center in the viewport -->
<attr name="scrollCenterStrategy">
<!-- keep scroll center in center of viewport, the middle point is 1/2 inside
client area (size - padding) by default. But you can also use scrollCenterOffset
or scrollCenterOffsetPercent to customize it-->
<enum name="keepCenter" value="0" />
<!-- keep scroll center as a fixed distance from start/top -->
<enum name="fixed" value="1" />
<!-- keep scroll center offset from the center of the view -->
<enum name="fixedPercent" value="2"/>
<!-- keep scroll center as a fixed distance from end/bottom -->
<enum name="fixedToEnd" value="3" />
</attr>
<!-- only used when scrollCenterStrategy is fixed or fixedPercent -->
<attr name="scrollCenterOffset" format="dimension" />
<!-- only used when scrollCenterStrategy is fixedPercent -->
<attr name="scrollCenterOffsetPercent" format="integer" />
<!-- how to align the selected item -->
<attr name="scrollItemAlign">
<!-- align the center of selected item -->
<enum name="center" value="0" />
<!-- align the start/up edge of selected item -->
<enum name="low" value="1" />
<!-- align the end/down edge of selected item -->
<enum name="high" value="2" />
</attr>
<!-- divisor (>=1) for view to chasing the scrolling target pos, set to 1.0 for
immediately fill the gap of current pos and target, default value 2.0 fills half
of the gap every time. The reason that we use Lerper model is for smoothing out
transitions between two different animations. -->
<attr name="lerperDivisor" format="float" />
<!--
distance based transform for the views on the start/top of center position,
the duration is interpreted as "dip" instead of milliseconds
-->
<attr name="lowItemTransform" format="reference" />
<!--
distance based transform for the views on the end/down of center position,
the duration is interpreted as "dip" instead of milliseconds
-->
<attr name="highItemTransform" format="reference" />
<!-- animation for showing expanded item -->
<attr name="expandedItemInAnim" format="reference" />
<!-- animation for hiding expanded item -->
<attr name="expandedItemOutAnim" format="reference" />
<!-- allow DPAD key to navigate out of scrollAdapterView, default is true -->
<attr name="navigateOutAllowed" format="boolean" />
<!-- allow DPAD key to navigate out of off axis of scrollAdapterView, default is true -->
<attr name="navigateOutOfOffAxisAllowed" format="boolean" />
<!-- allow DPAD key during animation, default is true -->
<attr name="navigateInAnimationAllowed" format="boolean" />
</declare-styleable>
<declare-styleable name="RadioPreference">
<attr name="radioGroup" format="string" />
</declare-styleable>
</resources>