2014-10-22 12 views
5
public class MainActivity extends Activity { 

LinearLayout rotator; 

protected void onCreate(Bundle savedInstanceState) { 

    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    rotator = (LinearLayout) findViewById(R.id.rotator); 

    ObjectAnimator rotation = ObjectAnimator.ofFloat(rotator, "rotationY", 0, 360); 
    rotation.setDuration(3000); 
    rotation.start(); 

} 
} 

Mam powyższy kod, który obraca się Widok wokół osi Y. Problem polega na tym, że perspektywa wydaje się zbyt "silna" - krawędź widoku na pierwszym planie staje się zbyt duża, a krawędź w tle staje się zbyt mała. Czy istnieje możliwość "obniżenia" współczynnika perspekrtu?Obrót 3D - perspektywa

+1

ustaw odległość aparatu – pskink

+0

jak mogę to zrobić? – Incredible

+3

setCameraDistance? – pskink

Odpowiedz

8
int distance = 1900; 
float scale = getResources().getDisplayMetrics().density; 
rotator.setCameraDistance(distance * scale); 

Jest to rozwiązanie dla wszystkich gęstości ekranu.