회전을 적용해야하는 정사각형 이미지가있는 정사각형 이미지가있는 ImageView가있는 LinearLayout이 있습니다. 그 4면 각각에 ImageView를 경계 짓는 것은 4 개의 다른보기로 구성된 프레임입니다. ImageView를 45도 회전하면 ImageView가 다른 뷰에 의해 잘려 집니 까? rotateAnimation은 ImageView의 경계를 어떻게 존중합니까?rotateAnimation으로 정사각형을 회전하십시오.
0
A
답변
0
나는이 질문에 대한 답변을 것이라고 생각 :
참고 : 관계없이 애니메이션을 이동하거나 크기를 조정할 수있는 방법의, 애니메이션이 자동으로 수용 할 수 있도록 조정하지 않습니다 보유하고있는보기의 경계입니다. 그렇더라도 애니메이션은 뷰의 범위를 넘어서 여전히 그려지며 잘리지 않습니다. 그러나 애니메이션이 부모 View의 경계를 초과하면 클리핑이 발생합니다.
(Source)
1
import android.app.Activity;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Matrix;
import android.os.Bundle;
import android.view.GestureDetector;
import android.view.KeyEvent;
import android.widget.ImageView;
import android.widget.ImageView.ScaleType;
public class ImageFunctionsActivity extends Activity
{
/** Called when the activity is first created. */
ImageView iv;
float degree=0;
GestureDetector gd;
Context context;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
iv=(ImageView) findViewById(R.id.imageTeddy);
context=getApplicationContext();
rotate(degree);
}
void rotate(float x)
{
Bitmap bitmapOrg = BitmapFactory.decodeResource(getResources(),R.drawable.tedd);
int width = bitmapOrg.getWidth();
int height = bitmapOrg.getHeight();
int newWidth = 200;
int newHeight = 200;
// calculate the scale - in this case = 0.4f
float scaleWidth = ((float) newWidth)/width;
float scaleHeight = ((float) newHeight)/height;
Matrix matrix = new Matrix();
matrix.postScale(scaleWidth, scaleHeight);
matrix.postRotate(x);
Bitmap resizedBitmap = Bitmap.createBitmap(bitmapOrg, 0, 0,width, height, matrix, true);
iv.setScaleType(ScaleType.CENTER);
iv.setImageBitmap(resizedBitmap);
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{
if(keyCode==KeyEvent.KEYCODE_DPAD_UP)
{
degree=degree+10;
rotate(degree);
}
if(keyCode==KeyEvent.KEYCODE_DPAD_DOWN) // rotate anti-clockwise
{
degree=degree-10;
rotate(degree);
}
return true;
}
}
+0
이 코드는 UP 키 또는 DOWN 키를 눌러 이미지를 회전합니다 ... – MAC
관련 문제
- 1. 열려있는 gles에서 정사각형을 그리기
- 2. 그래픽을 회전하십시오.
- 3. UIViewController를 회전하십시오.
- 4. Windows.Documents.Table을 회전하십시오.
- 5. 마우스 위치에있는 OpenGL에서 정사각형을 그립니다.
- 6. 화면을 가로 지르는 정사각형을 만듭니다.
- 7. CSS9 미리보기에서 회전하십시오.
- 8. UIScrollView에서 UIViewController를 회전하십시오.
- 9. TapGesture로 UIImageView를 회전하십시오.
- 10. CGAfffineTransformRotate를 사용하여 뷰를 회전하십시오.
- 11. 스윙 JLabel을 회전하십시오.
- 12. Clojure에서리스트 -리스트 행렬을 회전하십시오.
- 13. 화면에 직사각형을 회전하십시오.
- 14. 디버그에서 Mapview 오류를 회전하십시오.
- 15. 쿼터니온을 축을 따라 회전하십시오.
- 16. 중심을 중심으로 사각형을 회전하십시오.
- 17. 내 EditText를 Android에서 90도 회전하십시오.
- 18. winrt에서 Y 축에 객체를 회전하십시오.
- 19. Perspective를 제공하기 위해 UIView를 회전하십시오.
- 20. 정면을 향한면이 정사각형이되도록 큐브를 회전하십시오.
- 21. 텍스트를 자르지 않고 TextView를 회전하십시오.
- 22. '캔버스에서 그릴 수있는 것을 회전하십시오'
- 23. 나침반 방향을 사용하여 MapView를 회전하십시오.
- 24. 안드로이드에서 학위로 비트 맵을 회전하십시오.
- 25. 버튼을 클릭하여 게임 개체를 회전하십시오.
- 26. 인터페이스 빌더에서 라벨을 가로로 회전하십시오.
- 27. 행렬을 사용하여 사각형을 개별적으로 회전하십시오.
- 28. 픽셀 화 된 그림을 회전하십시오.
- 29. XNA에서 정사각형을 그리고 이동하는 방법은 무엇입니까?
- 30. 이미지에 8x8 정사각형을 그리는 방법은 무엇입니까?
가 왜 그냥 그것을 밖으로 시도하고 어떻게되는지? –