修复了bug
增加了新鲜事儿的字段 修改了marker动画
This commit is contained in:
@@ -63,6 +63,7 @@ public class MarkerNoveltyInfo {
|
||||
private String title;
|
||||
private String gasPrices;
|
||||
private boolean displayNavigation;
|
||||
private String desplayHost = "";
|
||||
private String styleType;
|
||||
|
||||
public String getContent() {
|
||||
@@ -137,6 +138,14 @@ public class MarkerNoveltyInfo {
|
||||
this.gasPrices = gasPrices;
|
||||
}
|
||||
|
||||
public String getDesplayHost() {
|
||||
return desplayHost;
|
||||
}
|
||||
|
||||
public void setDesplayHost(String desplayHost) {
|
||||
this.desplayHost = desplayHost;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "ContentData{" +
|
||||
@@ -148,6 +157,7 @@ public class MarkerNoveltyInfo {
|
||||
", title='" + title + '\'' +
|
||||
", gasPrices='" + gasPrices + '\'' +
|
||||
", displayNavigation=" + displayNavigation +
|
||||
", desplayHost='" + desplayHost + '\'' +
|
||||
", styleType='" + styleType + '\'' +
|
||||
'}';
|
||||
}
|
||||
|
||||
@@ -9,6 +9,8 @@ import android.view.animation.Interpolator;
|
||||
|
||||
import com.amap.api.maps.model.LatLng;
|
||||
import com.amap.api.maps.model.animation.Animation;
|
||||
import com.amap.api.maps.model.animation.AnimationSet;
|
||||
import com.amap.api.maps.model.animation.ScaleAnimation;
|
||||
import com.amap.api.maps.model.animation.TranslateAnimation;
|
||||
import com.mogo.map.MogoLatLng;
|
||||
import com.mogo.map.impl.amap.marker.AMapMarkerWrapper;
|
||||
@@ -229,9 +231,12 @@ public class MapMarkerManager implements IMogoMarkerClickListener, IMogoOnMessag
|
||||
point.y -= WindowUtils.dip2px(mContext, 100f);
|
||||
MogoLatLng targetMogoLatLng = MarkerServiceHandler.getMapUIController().getLocationMogoLatLngInScreen(point);
|
||||
LatLng target = ObjectUtils.fromMogo2(targetMogoLatLng);
|
||||
//使用TranslateAnimation,填写一个需要移动的目标点
|
||||
Animation animation = new TranslateAnimation(target);
|
||||
animation.setInterpolator(new Interpolator() {
|
||||
// 使用TranslateAnimation,填写一个需要移动的目标点
|
||||
AnimationSet animationSet = new AnimationSet(true);
|
||||
Animation animationTranslate = new TranslateAnimation(target);
|
||||
Animation animationScale = new ScaleAnimation(0.5f,2.5f,0.5f,2.5f);
|
||||
|
||||
animationScale.setInterpolator(new Interpolator() {
|
||||
@Override
|
||||
public float getInterpolation(float input) {
|
||||
if (input <= 0.5) {
|
||||
@@ -241,11 +246,28 @@ public class MapMarkerManager implements IMogoMarkerClickListener, IMogoOnMessag
|
||||
}
|
||||
}
|
||||
});
|
||||
//整个移动所需要的时间
|
||||
animation.setDuration(1000);
|
||||
//设置动画
|
||||
|
||||
animationSet.setInterpolator(new Interpolator() {
|
||||
@Override
|
||||
public float getInterpolation(float input) {
|
||||
if (input <= 0.5) {
|
||||
return (float) (0.5f - 2.0 * (0.5 - input) * (0.5 - input));
|
||||
} else {
|
||||
return (float) (0.5f - Math.sqrt((double) ((input - 0.5f) * (1.5f - input))));
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
// 整个移动所需要的时间
|
||||
animationSet.setDuration(1000);
|
||||
|
||||
// 添加动画集合
|
||||
animationSet.addAnimation(animationTranslate);
|
||||
animationSet.addAnimation(animationScale);
|
||||
|
||||
// 设置动画
|
||||
if (mogoMarker instanceof AMapMarkerWrapper) {
|
||||
((AMapMarkerWrapper) mogoMarker).getMarker().setAnimation(animation);
|
||||
((AMapMarkerWrapper) mogoMarker).getMarker().setAnimation(animationSet);
|
||||
((AMapMarkerWrapper) mogoMarker).getMarker().startAnimation();
|
||||
}
|
||||
} catch (Exception e) {
|
||||
|
||||
Reference in New Issue
Block a user