Przyjrzałem się podobnym pytaniom i wypróbowałem ich rozwiązania, ale nie zadziałało to dla mnie. Próbuję pobrać szerokość imageView, ale zwraca 0. Oto kod:Wyświetlane są getWidth() i getHeight() zwracające 0
public class MainActivity extends Activity {
private ImageView image1;
float centerX,centerY;
private ImageView image2;
private boolean isFirstImage = true;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.rotate);
image1 = (ImageView) findViewById(R.id.ImageView01);
image2 = (ImageView) findViewById(R.id.ImageView02);
image2.setVisibility(View.GONE);
if (isFirstImage) {
applyRotation(0, 90);
isFirstImage = !isFirstImage;
}
}
private void applyRotation(float start, float end) {
centerX=image1.getWidth()/2.0f;
centerY=image1.getHeight()/2.0f;
final Flip3dAnimation rotation =
new Flip3dAnimation(start, end,centerX , centerY);
rotation.setDuration(500);
rotation.setFillAfter(true);
rotation.setInterpolator(new AccelerateInterpolator());
rotation.setAnimationListener(new DisplayNextView(isFirstImage, image1,
image2));
if (isFirstImage)
{
image1.startAnimation(rotation);
} else {
image2.startAnimation(rotation);
}
}
}
Czy ktoś może mi w tym pomóc? Dziękujemy
Istnieje ponad wystarczająca liczba pytań/odpowiedzi na temat zgłoszenia zastrzeżeń dotyczących tego tematu.Krótko mówiąc masz dostęp do szerokości i wysokości, gdy nie są jeszcze mierzone. – Tobrun