1. Bitmap스케일 조절하는 createScaledBitmap이 늘릴 수 있는 최대크기가 정해져 있나요?  가로 4800 세로 1440인 이미지 파일이 있습니다.

이걸 그냥 적용하면 되긴 하는 데 제가 세로크기만 화면에 맞추고 가로크기는 기존 이미지값 그대로 입력했는데 프로그램 실행 시 오류가 나더라구요. 그래서 분석해봤는데 가로로 최대 3000까지만 늘릴 수 있었고 그 이상으로 수치를 늘리면 오류가 발생했습니다;;;

가로값은 이미지 원본값인 4800을 그대로 적용하고 싶은데 방법이 없을까요? ㅠ.ㅠ

 

2. 액티비티가 아닌 뷰클래스만 올렸습니다. 보시면 소스에는 이상이 없는 것 같은데 가상디바이스에서 실행 시 해당 키를 눌러도 적용이 되지 않았습니다. 더 이해가 안 가는 것은 학교에서 하면 되는데 집에서 하니 안된다는 건데요. 자판에 문제가 있는 것은 절대 아닙니다.

뭐가 문제일까요?

package com.keydownexample;

import android.content.Context;
import android.view.KeyEvent;
import android.view.View;
import android.graphics.*;

public class KeyDownExampleView extends View {
 public String m_dir = "없음";
 
 public KeyDownExampleView(Context context) {
  super(context);
  setFocusable(true);
 }
 public void onDraw(Canvas canvas){
  Paint p = new Paint();
  p.setTextSize(30);
  p.setColor(Color.BLACK);
  System.out.println("good");
  canvas.drawText("입력된 방향 키"+ m_dir, 0, 30, p);
 }
 @Override
 public boolean onKeyDown(int keyCode, KeyEvent event) {
  System.out.println("success");
  if(keyCode == KeyEvent.KEYCODE_F)
   m_dir = "왼쪽";
  if(keyCode == KeyEvent.KEYCODE_DPAD_RIGHT)
   m_dir = "오른쪽";
  if(keyCode == KeyEvent.KEYCODE_DPAD_DOWN)
   m_dir = "아래쪽";
  if(keyCode == KeyEvent.KEYCODE_DPAD_UP)
   m_dir = "위쪽";
  invalidate();
  return super.onKeyDown(keyCode, event);
 }
}