Android開発が初めてで、現在Bitmapで作業していますが、デバッグするたびにデバイスのファイルパスからビットマップを設定しようとしていますが、まだヌルです私は既に同様の質問を探していますが、私は何人かの人々の提案をしていますが、まだ動作していません。誰かが私に間違っていることの手がかりを与えることができますか?AndroidスタジオでBitmapを設定するとヌルになる
private int PICK_IMAGE_REQUEST = 1;
private ImageButton buttonChoose;
private Button buttonUpload;
private Button buttonView;
private ImageView imageView;
private Bitmap bitmap;
private Uri filePath;
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == PICK_IMAGE_REQUEST && resultCode == RESULT_OK && data != null && data.getData() != null) {
filePath = data.getData();
Toast.makeText(this,filePath.toString(),Toast.LENGTH_LONG);
try {
bitmap = MediaStore.Images.Media.getBitmap(this.getContentResolver(), filePath);
imageView.setImageBitmap(bitmap);
} catch (IOException e) {
e.printStackTrace();
}
}
}
private void showFileChooser() {
Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent, "Select Picture"), PICK_IMAGE_REQUEST);
}
このラインからのデバッグ:
bitmap = MediaStore.Images.Media.getBitmap(this.getContentResolver(), filePath);
imageView.setImageBitmap(bitmap);
それがヌルで保持し、私はアプリを続行することはできません。
このすべてのヘルプは高く評価され、デバッグのスクリーンショット
で、感謝
この場合、nullのままのカーソルです。/ –
filePathを表示するために乾杯しました。それが示すものを教えてくれますか? –
実際、私はファイルパスが何であるかを示すためにこれを使用しましたが、アプリケーションが表示される前にクラッシュするので、役に立たないだけです。 –