List of usage examples for android.support.v4.view.animation PathInterpolatorCompat create
public static Interpolator create(float controlX1, float controlY1, float controlX2, float controlY2)
From source file:com.taobao.weex.dom.transition.WXTransition.java
/** * create interpolcator same with web/* w ww . j a v a 2s . c o m*/ * http://www.w3school.com.cn/cssref/pr_transition-timing-function.asp * */ private static Interpolator createTimeInterpolator(String interpolator) { if (!TextUtils.isEmpty(interpolator)) { switch (interpolator) { case EASE_IN: return PathInterpolatorCompat.create(0.42f, 0f, 1f, 1f); case EASE_OUT: return PathInterpolatorCompat.create(0f, 0f, 0.58f, 1f); case EASE_IN_OUT: return PathInterpolatorCompat.create(0.42f, 0f, 0.58f, 1f); case EASE: return PathInterpolatorCompat.create(0.25f, 0.1f, 0.25f, 1f); case LINEAR: return PathInterpolatorCompat.create(0.0f, 0f, 1f, 1f); default: try { //Parse cubic-bezier SingleFunctionParser<Float> parser = new SingleFunctionParser<>(interpolator, new SingleFunctionParser.FlatMapper<Float>() { @Override public Float map(String raw) { return Float.parseFloat(raw); } }); List<Float> params = parser.parse(CUBIC_BEZIER); if (params != null && params.size() == 4) { return PathInterpolatorCompat.create(params.get(0), params.get(1), params.get(2), params.get(3)); } } catch (RuntimeException e) { if (WXEnvironment.isApkDebugable()) { WXLogUtils.e("WXTransition", e); } } } } return PathInterpolatorCompat.create(0.25f, 0.1f, 0.25f, 1f); }