<?xml version="1.0" encoding="utf-8"?>
<!--
  Copyright 2013 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>

    <string name="app_name">TextSwitcherSample</string>
    <string name="intro">This sample illustrates the use of a <b>TextSwitcher</b> to display text.
\n\n<b>Click the button</b> below to set new text in the TextSwitcher and observe the in and out
 fade animations.</string>
    <string name="next">Next</string>

</resources>
