2016-12-20 1 views
0

Я пытаюсь переместить ImageView из элемента внутри моего RecyclerView внутри фрагмента в Activity. Я заявил следующее в моемXamarin Android ImageView Transition

styles.xml

<!-- enable window content transitions --> 
<item name="android:windowActivityTransitions">true</item> 

<!-- specify enter and exit transitions --> 
<!-- options are: explode, slide, fade --> 
<item name="android:windowEnterTransition">@transition/change_image_transform</item> 
<item name="android:windowExitTransition">@transition/change_image_transform</item> 

<!-- specify shared element transitions --> 
<item name="android:windowSharedElementEnterTransition"> 
    @transition/change_image_transform 
</item> 
<item name="android:windowSharedElementExitTransition"> 
    @transition/change_image_transform 
</item> 

Тогда в моем

Recyclerview адаптере

Я начал свою деятельность с использованием

if (Android.OS.Build.VERSION.SdkInt >= Android.OS.BuildVersionCodes.Lollipop) 
{ 
    ActivityOptionsCompat options = ActivityOptionsCompat.MakeSceneTransitionAnimation((Activity)Context, pec.View, "profile"); 
    Context.StartActivity(intent, options.ToBundle()); 
} 

я определил как ImageViews с

transitionName = "профиль"

, а также имеют

перехода/change_image_transform.xml

это выглядит как

<?xml version="1.0" encoding="utf-8" ?> 
<transitionSet xmlns:android="http://schemas.android.com/apk/res/android"> 
    <changeImageTransform/> 
</transitionSet> 

Ошибок нет, только между моим предметом в recyclerview и действии не происходит никакого перехода.

ответ

1

Если вы используете MakeSceneTransitionAnimation, вам не нужно проектировать переход в XML-файле. Просто установить <item name="android:windowActivityTransitions">true</item> достаточно.

Когда вы выполняете переход с изображениями, вы должны убедиться, что имя перехода такое же.

У меня есть demo, он должен быть полезен для вас, переход из MainActivity в Activity1. Вы можете обратиться к проекту и найти решение.

enter image description here

+0

есть ли изображение, которое будет зафиксировано на обоих ImageViews? Я загружаю активность из RecyclerView, поэтому каждая строка будет иметь другое изображение, и я хочу передать ее в действие. – Carl

+0

@ Карловое изображение не нужно фиксировать на обоих изображениях. Используйте 'Pair' для определения мути изображения с тем же именем перехода. Вы можете поместить идентификатор в «намерение», когда «DetialActivity» при создании вы можете получить идентификатор и установить другое изображение в ''ImageView'' DetialActivity' –

+0

. Найденный вопрос, я использовал ActivityOptionsCompat, теперь я ' я изменил его на ActivityOptions, все работает. Спасибо за вашу помощь. – Carl