Notice
Recent Posts
Recent Comments
Link
관리 메뉴

설.현.아빠

[ViewFlipper] 본문

안드로이드/Image

[ViewFlipper]

설.현.아빠 2011. 2. 11. 10:30




 

<?xml version="1.0" encoding="utf-8"?>

 

<!-- main.xml -->


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<ViewFlipper android:id="@+id/details"
 android:layout_width="fill_parent"
 android:layout_height="fill_parent"
 />
</LinearLayout>

 

res/anim/push_left_out.xml파일을 통해 애니메이션이 화면에서 어떻게 사라지는지 지정해 준다.

 

<?xml version="1.0" encoding="utf-8"?>

 

<!-- push_left_out.xml -->


<!-- 
 * Copyright (C) 2007 Google Inc.
 *
 * 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.
 -->

<set xmlns:android="http://schemas.android.com/apk/res/android">
 <translate android:fromXDelta="0" android:toXDelta="-100%p" android:duration="300"/>
 <alpha android:fromAlpha="1.0" android:toAlpha="0.0" android:duration="300" />
</set>

 

res/anim/push_left_in.xml 파일을 통해 애니메이션이 화면에 어떻게 나타나는지 지정해준다.

 

<?xml version="1.0" encoding="utf-8"?>

<!-- push_left_in.xml -->

 

<!-- 
 * Copyright (C) 2007 Google Inc.
 *
 * 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.
 -->

<set xmlns:android="http://schemas.android.com/apk/res/android">
 <translate android:fromXDelta="100%p" android:toXDelta="0" android:duration="300"/>
 <alpha android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="300" />
</set>

 

// viewFlipperAcitivity.java

 

package lee.android.TabDemo;

import android.app.Activity;
import android.os.Bundle;
import android.view.ViewGroup;
import android.view.animation.AnimationUtils;
import android.widget.Button;
import android.widget.ViewFlipper;

public class viewFlipperActivity extends Activity {
 static String[] items = {"asdf","ngdehg","qreqwer","yeurt","a","gnfdgn","ertdf"};
 ViewFlipper flipper;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        flipper = (ViewFlipper)findViewById(R.id.details);
        flipper.setInAnimation(AnimationUtils.loadAnimation(this, R.anim.push_left_in));
        flipper.setOutAnimation(AnimationUtils.loadAnimation(this, R.anim.push_left_out));
        
        for(String item : items) {
         Button btn=new Button(this);
         btn.setText(item);
         
         flipper.addView(btn, new ViewGroup.LayoutParams(
           ViewGroup.LayoutParams.FILL_PARENT,
           ViewGroup.LayoutParams.FILL_PARENT));
        }
        flipper.setFlipInterval(2000);
        flipper.startFlipping();
    }       
}


Comments