Sobes.tech
Junior — Middle

Պատմեք դեպքի մասին, երբ դուք հաջողությամբ լուծել եք ձեր պրակտիկայում բարդ կամ հիշարժան խնդիր։

sobes.tech AI

Պատասխան AI-ից

Իմ Android նախագծերից մեկում ինձ անհրաժեշտ էր իրականացնել բարդ անցումային անիմացիա էկրանների միջև՝ պահպանելով տարրերի վիճակը և հարթ փոփոխելով նրանց չափերը: Ստանդարտ միջոցները չէին տալիս ցանկալի արդյունքը, այդ պատճառով ես օգտագործեցի Transition API և հարմարեցված անիմատորների համադրություն: Վերջում ստացվեց հարթ և արձագանքող ինտերֆեյս, ինչը զգալիորեն բարելավեց օգտվողի փորձը և դրական արձագանքներ ստացավ հաճախորդից:

Transition API-ի օգտագործման օրինակ:

val transition = ChangeBounds().apply {
    duration = 300
    interpolator = AccelerateDecelerateInterpolator()
}
TransitionManager.beginDelayedTransition(container, transition)
view.layoutParams.width = newWidth
view.layoutParams.height = newHeight
view.requestLayout()