Activity使用SingleTask和ClearTask意图更改动画

时间:2015-09-08 13:10:39

标签: android android-intent xamarin.android

我的申请中有LoginActivityMainActivity。 当用户成功登录时,我需要从后台堆栈中删除LoginActivityMainActivity当用户注销时。 因此,我为ClearTaskSingleTask添加了MainActivityLoginActivity意图标记。

按预期工作,但它引发了另一个问题 - 我丢失了使用overridePendingTransitions(int, int)注册的自定义动画。

有没有办法设置SingleTaskClearTask意图的自定义动画? 是否可以通过自定义动画实现我之前描述的活动工作流程?

1 个答案:

答案 0 :(得分:1)

当您将用户从LoginActivty导航到MainActivity时,您只需调用finish();在您的意图活动导航代码之后。您可以在主题样式中添加活动动画。

在您的主要应用主题中。添加以下内容:

<html>
	<head>
		<link type="text/css" rel="stylesheet" href="stylesheet.css"/>
		<title>My Title</title>
	</head>
	<body>
	<div id="header">
	    <h1>My <span>Resume</span></h1>
	</div>
	<div class="left">
	    <h2>Experience</h2>
	        <ul>
	            <p>Microsoft Certified Solutions Expert (MCSE)</p>
	            <p>Expert on jQuery</p>
	        </ul>
	    <h3>Skills</h3>
	        <ul>
                <li><p>Complex Problem Solving</p></li>
	            <li><p>Flexibility</p></li>
	            <li><p>Strong Work Ethic</p></li>
	        </ul>
	</div>
	<div class="right">
	    <h4>Education</h4>
	        <ul>
	            <p>Some Courses</p>
	       </ul>
	    <h5>Business</h5>
	        <ul>
	            <li><p>Cafe</p></li>
	        </ul>
	    <h6>Earnings</h6>
	        <ul>
	            <li><p>10.000/Month</p></li>
	        </ul>
	</div>
	<div style="clear:both; border:none; border-radius: none;"></div>
	<div id="footer">
	    <p>© 2015 Some Text</p>
	</div>
	</body>
</html>

abc_fade_in.xml

<style name="AppTheme" parent="AppBaseTheme">
   <item name="android:windowAnimationStyle">@style/OutdoorTheme.Window</item>
</style> 

<style name="OutdoorTheme.Window" parent="@android:style/Animation.Activity">
    <item name="android:activityOpenEnterAnimation">@anim/abc_fade_in</item>
    <item name="android:activityOpenExitAnimation">@anim/abc_fade_out</item>
    <item name="android:activityCloseEnterAnimation">@anim/abc_fade_in</item>
    <item name="android:activityCloseExitAnimation">@anim/abc_fade_out</item>
</style>

abc_fade_out.xml

<alpha xmlns:android="http://schemas.android.com/apk/res/android"
   android:interpolator="@android:anim/decelerate_interpolator"
   android:fromAlpha="0.0" android:toAlpha="1.0"
   android:duration="@android:integer/config_mediumAnimTime" />