ECode EnterTransitionCoordinator::ViewInstancesReady(
    /* [in] */ IArrayList* accepted,    //ArrayList<String>
    /* [in] */ IArrayList* localNames,  //ArrayList<String>
    /* [in] */ IArrayList* localViews)  //ArrayList<View>
{
    Boolean remap = FALSE;
    Int32 size;
    localViews->GetSize(&size);
    Boolean attached;
    String transitionNmae;
    for (Int32 i = 0; i < size; i++) {
        AutoPtr<IInterface> obj, localNameObj;
        localViews->Get(i, (IInterface**)&obj);
        IView* view = IView::Probe(obj);
        view->GetTransitionName(&transitionNmae);
        localNames->Get(i, (IInterface**)&localNameObj);
        if (!TextUtils::Equals(transitionNmae, Object::ToString(localNameObj))
                || (view->IsAttachedToWindow(&attached), !attached)) {
            remap = TRUE;
            break;
        }
    }
    if (remap) {
        return TriggerViewsReady(MapNamedElements(accepted, localNames));
    }
    else {
        return TriggerViewsReady(MapSharedElements(accepted, localViews));
    }
}