| <?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> |
| <compileSdkVersion>21</compileSdkVersion> |
| |
| |
| <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> |