1/* 2 * Copyright (C) 2010 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17package com.android.test.hwui; 18 19import android.app.Activity; 20import android.os.Bundle; 21import android.text.TextUtils; 22import android.view.View; 23import android.view.animation.Animation; 24import android.view.animation.AnimationUtils; 25import android.widget.LinearLayout; 26import android.widget.TextView; 27 28@SuppressWarnings({"UnusedDeclaration"}) 29public class MarqueeActivity extends Activity { 30 @Override 31 protected void onCreate(Bundle savedInstanceState) { 32 super.onCreate(savedInstanceState); 33 34 final LinearLayout linearLayout = new LinearLayout(this); 35 linearLayout.setOrientation(LinearLayout.VERTICAL); 36 37 final TextView text1 = new TextView(this); 38 text1.setText("This is a marquee inside a TextView"); 39 text1.setSingleLine(true); 40 text1.setHorizontalFadingEdgeEnabled(true); 41 text1.setEllipsize(TextUtils.TruncateAt.MARQUEE); 42 linearLayout.addView(text1, new LinearLayout.LayoutParams( 43 100, LinearLayout.LayoutParams.WRAP_CONTENT)); 44 45 final TextView text2 = new TextView(this); 46 text2.setText("This is a marquee inside a TextView"); 47 text2.setSingleLine(true); 48 text2.setHorizontalFadingEdgeEnabled(true); 49 text2.setEllipsize(TextUtils.TruncateAt.MARQUEE); 50 LinearLayout.LayoutParams params = new LinearLayout.LayoutParams( 51 100, LinearLayout.LayoutParams.WRAP_CONTENT); 52 linearLayout.addView(text2, params); 53 54 setContentView(linearLayout); 55 56 getWindow().getDecorView().postDelayed(new Runnable() { 57 @Override 58 public void run() { 59 text2.setVisibility(View.INVISIBLE); 60 Animation animation = AnimationUtils.loadAnimation(text2.getContext(), 61 R.anim.slide_off_left); 62 animation.setFillEnabled(true); 63 animation.setFillAfter(true); 64 text2.startAnimation(animation); 65 } 66 }, 1000); 67 } 68} 69