Uderzając głową przez ponad dwie godziny, wiedziałem, jak potrząsać i chybotać widok.
Niestety zaakceptowana odpowiedź nie będzie działać poza onCreateView fragmentu.
Przykład, jeśli masz metodę onClick i wewnątrz niej. Masz animację jak poniżej, ale nie zadziała.
Proszę przejść przez kod.
DoneStart.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
register(view);
}
});
Metoda rejestracji ma pewne kontrole, takie jak poniższy kod
private void register(View view) {
String type = typedThings.getText.toString();
String km = Km_Now.getText().toString();
if (serviceType == null) {
animationServiceList = AnimationUtils.loadAnimation(getActivity(), R.anim.shake_wobble);
silverServiceButton.setAnimation(animationServiceList);
generalServiceButton.setAnimation(animationServiceList);
platinumServiceButton.setAnimation(animationServiceList);
animationServiceList.start();
} else if (km == null) {
animationEditText = AnimationUtils.loadAnimation(getActivity(), R.anim.shake_wobble);
Km_Now.setAnimation(animationEditText);
animationEditText.start();
}
Call animationServiceList.start (); nigdy nie zostanie wezwany,
ROZWIĄZANIE: Użyj PropertyAnimator jak ObjectAnimator.