如何从片段到 activity 进行 3D 翻转?
How to make a 3D flip from a fragment to an activity?
我正在尝试在单击片段中的按钮时翻转到另一个 activity。我已经为调用另一个函数的所需按钮设置了 onClickListener,例如:
Button btn = (Button) getActivity().findViewById(R.id.button1);
btn.setOnClickListener(View.onClicListener(
@Override
public void onClick(View v)
{
fnTransition(v);
});
我尝试使用 xml 文件中定义的 2D 动画从片段中打开 activity。
例如:
private void fnTransition(View v)
{
//some condition check
startActivity(getActivity(), intendedActivity.class));
getActivity.overridePendingTransition (R.layout.new_activity_animation,
R.layout.leaving_activity_animation);
getActivity().finish();
}
是否可以采用类似的方法来执行 3D 动画过渡?
用这些替换提到的 2 个 xml 文件几乎可以解决问题,尽管这可能不是最好的方法。
xml 1 -> from_middle.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<scale
xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXScale="1.0" android:toXScale="1.0"
android:pivotX="50%"
android:fromYScale="0.0" android:toYScale="1.0"
android:pivotY="50%"
android:duration="500" />
</set>
xml2->to_middle
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<scale
xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXScale="1.0" android:toXScale="1.0"
android:pivotX="50%"
android:fromYScale="1.0" android:toYScale="0.0"
android:pivotY="50%"
android:duration="500" />
</set>
虽然这几乎可以解决问题,但更好的方法会更可取,因为可以看出这不是正确的翻转。
我正在尝试在单击片段中的按钮时翻转到另一个 activity。我已经为调用另一个函数的所需按钮设置了 onClickListener,例如:
Button btn = (Button) getActivity().findViewById(R.id.button1);
btn.setOnClickListener(View.onClicListener(
@Override
public void onClick(View v)
{
fnTransition(v);
});
我尝试使用 xml 文件中定义的 2D 动画从片段中打开 activity。
例如:
private void fnTransition(View v)
{
//some condition check
startActivity(getActivity(), intendedActivity.class));
getActivity.overridePendingTransition (R.layout.new_activity_animation,
R.layout.leaving_activity_animation);
getActivity().finish();
}
是否可以采用类似的方法来执行 3D 动画过渡?
用这些替换提到的 2 个 xml 文件几乎可以解决问题,尽管这可能不是最好的方法。
xml 1 -> from_middle.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<scale
xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXScale="1.0" android:toXScale="1.0"
android:pivotX="50%"
android:fromYScale="0.0" android:toYScale="1.0"
android:pivotY="50%"
android:duration="500" />
</set>
xml2->to_middle
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<scale
xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXScale="1.0" android:toXScale="1.0"
android:pivotX="50%"
android:fromYScale="1.0" android:toYScale="0.0"
android:pivotY="50%"
android:duration="500" />
</set>
虽然这几乎可以解决问题,但更好的方法会更可取,因为可以看出这不是正确的翻转。