Salve, mi stavo cimentando nella creazione di una semplice app dotata di un Button e di una ImageView: il button avvia la fotocamera del device, e l'immagine scattata compare nell'ImageView. Questo almeno quanto dovrebbe accadere, ma c'è qualcosa che non quadra...
Questo è il codice:
btnClick() è definito come valore di un onClick nell'XML che realizza il Button.codice:import android.app.Activity; import android.content.Intent; import android.graphics.Bitmap; import android.os.Bundle; import android.provider.MediaStore; import android.view.View; import android.widget.Button; import android.widget.ImageView; public class MainActivity extends Activity { Button btn; private static final int CAMERA_REQUEST = 123; ImageView imageView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); btn = (Button) findViewById(R.id.click); imageView = (ImageView) imageView.findViewById(R.id.fotografia); } public void btnClick(View v) { Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); startActivityForResult(intent, CAMERA_REQUEST); } public void onActivityResult(int requestCode, int resultCode, Intent data) { if (requestCode == CAMERA_REQUEST && resultCode == Activity.RESULT_OK) { Bitmap photo = (Bitmap) data.getExtras().get("data"); imageView.setImageBitmap(photo); } } }
Android Studio non segnala errori, ma in emulazione l'applicazione viene terminata.
Non mi quadra molto quel get("data") ma se non metto le virgolette mi dice che un Intent non è una String!