Xamarin.android Activity动画切换效果实现

http://blog.csdn.net/esunshine1985/article/details/44302903

 

1.在Resources——values下新建styles.xml,添加内容如下:

  1. <resources xmlns:android="http://schemas.android.com/apk/res/android">  
  2.     <style name="AppTheme" parent="@android:style/Theme">       
  3.         <item name="android:windowNoTitle">true</item<!-- 设置没有标题 -->  
  4.         <item name="android:textSize">20sp</item>   <!-- 设置文本大小 -->  
  5.           <item name="android:textColor">#F34141</item>  
  6.         <item name="android:background">@android:color/background_light</item>  
  7.         <!-- 设置activity切换动画 -->  
  8.         <item name="android:windowAnimationStyle">@style/activityAnimation</item>  
  9.     </style>  
  10.     <!-- animation 样式 -->  
  11.     <style name="activityAnimation" parent="@android:style/Animation">  
  12.         <item name="android:activityOpenEnterAnimation">@anim/slide_right_in</item>  
  13.       <item name="android:activityCloseExitAnimation">@anim/slide_right_out</item>  
  14.         <item name="android:activityOpenExitAnimation">@anim/slide_left_out</item>  
  15.         <item name="android:activityCloseEnterAnimation">@anim/slide_left_in</item>  
  16.     </style>  
  17. </resources>  

2.在Resources下新建文件夹anim,在这个新建的文件夹下面新建四个文件,分别是

(1)slide_left_in.xml

  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <set  
  3.   xmlns:android="http://schemas.android.com/apk/res/android">  
  4.   <translate android:duration="300" android:fromXDelta="-100.0%p" android:toXDelta="0.0" />  
  5. </set>  

(2)slide_left_out.xml

  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <set  
  3.   xmlns:android="http://schemas.android.com/apk/res/android">  
  4.   <translate android:duration="300" android:fromXDelta="0.0" android:toXDelta="-100.0%p" />  
  5. </set>  

(3)slide_right_in.xml

  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <set  
  3.   xmlns:android="http://schemas.android.com/apk/res/android">  
  4.   <translate android:duration="300" android:fromXDelta="100.0%p" android:toXDelta="0.0" />  
  5. </set>  

(4)slide_right_out.xml

  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <set  
  3.   xmlns:android="http://schemas.android.com/apk/res/android">  
  4.   <translate android:duration="300" android:fromXDelta="0.0" android:toXDelta="100.0%p" />  
  5. </set>  

3.修改AndroidManifest.xml文件(红色标注的部分)

<application android:theme="@style/AppTheme"></application>
4.在MainActivity.cs中的切换按钮的代码:

  1. button.Click += delegate  
  2. {  
  3.     Intent intent = new Intent();  
  4.     intent.SetClass(this, typeof(Activity2));  
  5.     StartActivity(intent);  
  6.     OverridePendingTransition(Resource.Animation.slide_left_in, Resource.Animation.slide_right_out);  
  7. };  

 

posted @   LuoCore  阅读(1194)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示