99 lines
3.3 KiB
XML
99 lines
3.3 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!--
|
|
Copyright 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.
|
|
-->
|
|
|
|
|
|
|
|
<sample>
|
|
<name>ElevationBasic</name>
|
|
<group>UI</group>
|
|
<package>com.example.android.elevationbasic</package>
|
|
|
|
<!-- change minSdk if needed-->
|
|
<minSdk>21</minSdk>
|
|
|
|
<strings>
|
|
<intro>
|
|
<![CDATA[
|
|
This sample demonstrates two alternative ways to move a view in the z-axis. The
|
|
first view has a fixed elevation using XML and the second one is raised when the user
|
|
taps on it, using setTranslationZ().
|
|
]]>
|
|
</intro>
|
|
<sample_action>Elevation Basic</sample_action>
|
|
</strings>
|
|
|
|
<template src="base"/>
|
|
<template src="FragmentView"/>
|
|
<common src="logger"/>
|
|
<common src="activities"/>
|
|
<metadata>
|
|
<status>PUBLISHED</status>
|
|
<categories>UI, Input</categories>
|
|
<technologies>Android</technologies>
|
|
<languages>Java</languages>
|
|
<solutions>Mobile</solutions>
|
|
<level>BEGINNER</level>
|
|
<icon>screenshots/icon-web.png</icon>
|
|
<screenshots>
|
|
<img>screenshots/fixed.png</img>
|
|
<img>screenshots/raised.png</img>
|
|
</screenshots>
|
|
<api_refs>
|
|
<android>android.view.MotionEvent</android>
|
|
</api_refs>
|
|
<description>
|
|
<![CDATA[
|
|
This sample demonstrates ways to move a view in the z-axis using
|
|
`setTranslationZ()`. This method was introduced in API Level 21 ('Lollipop').
|
|
]]>
|
|
</description>
|
|
<intro>
|
|
<![CDATA[
|
|
This sample uses two shapes, a circle and a square, and it demonstrates two
|
|
alternative ways to move a view in the z-axis. The first shape, the circle,
|
|
has a fixed elevation, which is defined in XML. The second view, the square,
|
|
changes its elevation using [setTranslationZ()][1] when a user touches it:
|
|
|
|
shape2.setOnTouchListener(new View.OnTouchListener() {
|
|
@Override
|
|
public boolean onTouch(View view, MotionEvent motionEvent) {
|
|
int action = motionEvent.getActionMasked();
|
|
/* Raise view on ACTION_DOWN and lower it on ACTION_UP. */
|
|
switch (action) {
|
|
case MotionEvent.ACTION_DOWN:
|
|
Log.d(TAG, "ACTION_DOWN on view.");
|
|
view.setTranslationZ(120);
|
|
break;
|
|
case MotionEvent.ACTION_UP:
|
|
Log.d(TAG, "ACTION_UP on view.");
|
|
view.setTranslationZ(0);
|
|
break;
|
|
default:
|
|
return false;
|
|
}
|
|
return true;
|
|
}
|
|
});
|
|
|
|
The elevation reverts back once the touch is removed.
|
|
|
|
[1]: https://developer.android.com/training/material/shadows-clipping.html#Elevation
|
|
]]>
|
|
</intro>
|
|
</metadata>
|
|
</sample>
|