Android Transition框架使用--Demo(2)
2016-03-17 23:30
597 查看
这篇文章接Transition框架介绍,给出一个完整的Demo。
1 Activity代码
2 activity_transition_main3.xml
3 activity_transition_start3.xml
4 activity_transition_end3.xml
5 res/transition/fade_transition.xml
1 Activity代码
public class TransitionActivity2 extends Activity implements View.OnClickListener { RelativeLayout rl; //scenes to transition private Scene scene1, scene2; //transition to move between scenes private Transition transition; //flag to swap between scenes private boolean start; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // getWindow().requestFeature(Window.FEATURE_ACTIVITY_TRANSITIONS); setContentView(R.layout.activity_transition_start2); rl=(RelativeLayout)findViewById(R.id.base); rl.setOnClickListener(this); //get the layout ID RelativeLayout baseLayout = (RelativeLayout)findViewById(R.id.base); //first scene ViewGroup startViews = (ViewGroup)getLayoutInflater() .inflate(R.layout.activity_transition_start2, baseLayout, false); //second scene ViewGroup endViews = (ViewGroup)getLayoutInflater() .inflate(R.layout.activity_transition_end2, baseLayout, false); //create the two scenes scene1 = new Scene(baseLayout, startViews); scene2 = new Scene(baseLayout, endViews); //create transition, set properties transition = new AutoTransition(); transition.setDuration(2000); transition.setInterpolator(new AccelerateDecelerateInterpolator()); //initialize flag start=true; } @Override public void onClick(View v) { //check flag if(start) { TransitionManager.go(scene2, transition); start=false; } else { TransitionManager.go(scene1, transition); start=true; } } }
2 activity_transition_main3.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:id="@+id/master_layout"> <TextView android:id="@+id/tv_title" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentStart="true" android:layout_alignParentTop="true" android:layout_marginTop="53dp" android:text="Title" android:textAppearance="?android:attr/textAppearanceLarge" /> <FrameLayout android:id="@+id/scene_root" android:layout_width="match_parent" android:layout_height="wrap_content"> <include layout="@layout/activity_transition_start3" /> </FrameLayout> </LinearLayout>
3 activity_transition_start3.xml
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#ffffff" android:id="@+id/base" tools:context=".TransitionsActivity"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:textAppearance="?android:attr/textAppearanceLarge" android:text="Large Text11" android:id="@+id/text_view1" android:layout_alignParentTop="true" android:layout_alignParentStart="true" android:layout_marginTop="53dp" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:textAppearance="?android:attr/textAppearanceLarge" android:text="Large Text22" android:id="@+id/text_view2" android:layout_marginTop="53dp" android:layout_below="@+id/text_view1" /> </RelativeLayout>
4 activity_transition_end3.xml
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#ffffff" android:id="@+id/base" tools:context=".TransitionsActivity"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:textAppearance="?android:attr/textAppearanceLarge" android:text="Large Text22" android:id="@+id/text_view2" android:layout_alignParentTop="true" android:layout_alignParentStart="true" android:layout_marginTop="53dp" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:textAppearance="?android:attr/textAppearanceLarge" android:text="Large Text11" android:id="@+id/text_view1" android:layout_below="@+id/text_view2" android:layout_marginTop="53dp" /> </RelativeLayout>
5 res/transition/fade_transition.xml
<transitionSet xmlns:android="http://schemas.android.com/apk/res/android" android:transitionOrdering="sequential"> <fade android:fadingMode="fade_out"/> <changeBounds/> <fade android:fadingMode="fade_in"/> </transitionSet> <!--<autoTransition--> <!--xmlns:android="http://schemas.android.com/apk/res/android"--> <!--android:duration="3000"--> <!--android:interpolator="@android:interpolator/cycle"/>-->
相关文章推荐
- android开发之路09(浅谈SQLite数据库01)
- Android扫描本地mp3格式音乐
- Android Transition框架使用--介绍(1)
- android ListView 和Adapter 结合,但是不调用getView()方法??
- 关于Android Drawable Resource
- 谷歌正式发布基于X86的Android L模拟器
- Android自制图片的三级缓存(代码+讲解)
- Android图片缩放
- 一个三年Android开发的总结-git基础知识与协作开发
- Android:RecyclerView嵌套CardView应用
- 在Eclipse中关联Android Private Libraries中文件的源代码
- android TextView实现滚动显示效果
- 源码解析Android onmeasure()的量算过程
- Android入门教程 Fragment使用教程【实例讲解】
- Android Studio中提示:Project SDK is not defined
- #Android学习#Animation简单使用
- Android开发最佳实践
- Android Studio adb无法启动解决方案
- Android Service的绑定简介
- Android RecyclerView 使用完全解析 体验艺术般的控件