2012-08-25 2 views
0

사진을 캡처하여 이미지보기에 표시하려고합니다.Android - 카메라 문제

 public class next extends Activity{ 

     public void onCreate(Bundle savedInstanceState) { 
       super.onCreate(savedInstanceState); 
       setContentView(R.layout.next);   Button cbutton = (Button) findViewById(R.id.capture); /* Capture Photo */ 
        cbutton.setOnClickListener(new OnClickListener() { 

       public void onClick(View v)   { 
         Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
         startActivityForResult(intent,0);  }  }); 

      } 
     @Override 
public void startActivityForResult(Intent intent, int requestCode) {   
ImageView iv 
     = (ImageView) findViewById(R.id.imageView1); 
     if(requestCode == 0)   
    {  Bitmap theImage = (Bitmap) data.getExtras().get("data"); 
      iv.setImageBitmap(theImage);   
}}} 

이 코드는 내가 수행 한 코드입니다. 이제 문제는 내가 "데이터"

Bitmap theImage = (Bitmap) ***data***.getExtras().get("data"); 

아래 빨간 선을 얻고있다 그리고 나는 이유가 없다는 것입니다, 하나는 내가 잘못 또는 내 문제에 대한 다른 솔루션 무엇을했는지 설명해 주시겠습니까?

+0

적어도 형식을 읽기 쉽도록 시도해 주실 수 있습니까? 이렇게하면 답을 얻을 확률이 높아집니다. – Ridcully

답변

0

변수 data은 메소드에 매개 변수로 전달되지 않으므로 빨간색으로 표시됩니다. 이 코드

+0

이 코드 줄에 대해 설명해 주시겠습니까? 비트 맵 theImage = (비트 맵) *** 데이터 ***. getExtras(). get ("data"); 나는 그것을 연구하려고 노력했지만 그것을 이해할 수 없었다. –

+0

코드를 어떻게 설명 할 수 있습니까 ??? 어딘가에서 그것을 복사했다면, 거기에서 설명을 찾거나 튜토리얼을 찾으십시오. – Ridcully

+0

튜토리얼에서이 코드를 사용해 보았습니다. ok –

0

문제는 내가 잘못 메소드를 오버라이드 (override)가이었다 :

protected void onActivityResult(int requestCode, int resultCode, Intent data) { 


     //ImageView iv = (ImageView) findViewById(R.id.imageView1); 
     if(requestCode == 1) 
     { 

     Bitmap theImage = (Bitmap) data.getExtras().get("data"); 

       iv.setImageBitmap(theImage); 
     } 

그것입니다 :)

:

public void startActivityForResult(Intent intent, int requestCode) {   
ImageView iv 
     = (ImageView) findViewById(R.id.imageView1); 
     if(requestCode == 0)   
    {  Bitmap theImage = (Bitmap) data.getExtras().get("data"); 
      iv.setImageBitmap(theImage);   
}} 

결과는 다음과 같은 방법으로 표시하는 활동에서 올 때 때문에

}