Android アプリでカスタマイズされたマーカー「バブル」を使用しようとしています。これを行うために、View を返してデータを入力する InfoWindowAdapter を作成しました。
ただし、何らかの理由で、そのビュー (またはその中にあるもの) にアニメーションを適用できないようです。特定のアニメーションの方法でポップしたいのですが、おそらく何かが欠けています。
これは私がこれまでに試したことです:
map.setInfoWindowAdapter(new InfoWindowAdapter() {
private final View contents = getLayoutInflater().inflate(R.layout.marker_layout, null);
public View getInfoWindow(Marker marker) {
TranslateAnimation animator = new TranslateAnimation(0.0f, 0.0f, 0.0f, 100.0f);
animator.setDuration(2000);
animator.setInterpolator(new AccelerateInterpolator());
animator.setFillAfter(true);
contents.findViewById(R.id.entity_name).clearAnimation();
contents.findViewById(R.id.entity_name).startAnimation(animator);
((TextView) contents.findViewById(R.id.entity_name)).setText(marker.getTitle());
return contents;
}
/* ... */
ビューは正常に作成および設定されますが、親アニメーションはありません。同じアニメーションをレイアウトの別の要素に適用すると問題なく動作するので、これは Google マップが情報ウィンドウを使用する方法に関するものだと思い始めています。