|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
很多框架是用C写的学习iOS开发基础可以按照下面两个方面学基础(原料钢铁塑料)在android4.4(KitKat)中,谷歌增加了良多不错的工具。如今我们来看看android.transition框架。
多年来,android精益求精现有的动画工具供开辟者利用。在HoneyComb版本中,供应了良多不错的API用于创立丰厚、庞大的动画。在此基本上,KitKat的android.transition让我们能够经由过程一种更直不雅的体例界说动画效果。
Scene和Transition
先从Scene和Transition观点提及。Scene界说了界面确当前形态信息,而Transition界说了界面之间的切换。
能够从结构文件中载进Scene界说,示比方下:
1
scene=Scene.getSceneForLayout(container,R.layout.example,context);
个中container在Scene中是一个包括了一切view的ViewGroup。假如是在fragment中,Scene就是传进onCreateView()办法的参数。利用Transition的最复杂体例就是利用TransitionManager处置,示比方下:
1
TransitionManager.go(scene);
假如在TransitionManager中不明白必要指定哪一个Transition,就会默许利用AutoTransition,这个我们会前面先容。也能够用inflater载进现有的view来创立Scene,示比方下:
1
2
Viewview=inflater.inflate(R.layout.example,container,false);
Scenescene=newScene(container,(ViewGroup)view);
Andorid.Transition理论
我们来看一个更具体的示例,起首从项目主页下载示例代码AndroidTransitionExample。这已是一个已完成的项目了,以是也能够用gitcheckout检出代码(以下是具体注释)。
起首新建只包括一个Fragment的项目,如许能够更简单纪录一些信息。我们为TransitionFragment新建一个xml结构文件,叫做fragment_transition_scene_1.xml。接着往内里增加一个TextView,然后在TextView上面再增加一个Button,以下:
fragment_transition_scene_1.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/scene"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/textView"
android:text="@string/hello_world"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<Button
android:id="@+id/goButton"
android:text="@string/button_go"
android:layout_below="@id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</RelativeLayout>
你必定猜失掉,我们接上去还要新建另外一个xml结构文件,fragment_transition_scene_2.xml。它和上一个结构文件基础一样,只是把Button移到结构底部。示比方下:
<p>1
2
3
4
5
6
7
8
9
...
<Button
android:id="@+id/goButton"
android:text="@string/button_go"
android:layout_below="@id/textView"
<p>android:layout_alignParentBottom= |
|