0

こんにちは、画像パスを別のアクティビティに送信しているときにヌル ポインター例外が発生しています

ここに私のコードの下にあります

public void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (resultCode == RESULT_OK) {
        System.out.println(requestCode + ",      " + resultCode);
        if (requestCode == SELECT_PICTURE) {

            if (data.getData() != null) {
                    Uri selectedImageUri = data.getData();
                    String path = getPath(selectedImageUri);
                    System.out.println("PATH  =  "+path);
                    Intent _intent = new Intent(MainActivity.this,AndroidFaceDetector.class);
                    _intent.putExtra("mypath", path);
                    startActivityForResult(_intent, CROPPED_FACE_IMAGE);
            }
            else
            {
                Toast.makeText(MainActivity.this, "Please try again", Toast.LENGTH_SHORT).show();
            }
        }
        else {
            setImage(data);
        }

    }
}

今 AndroidFaceDetector クラスに

     @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(new myView(this));
    Intent _intent = getIntent();
    path = _intent.getStringExtra("mypath");
    System.out.println("Path is gettting "+path); //here i am getting null value
}

なぜなら

ここで私はパス値nullを取得しています..どんな体でもこの問題を解決できますか....

4

3 に答える 3

0

2番目のアクティビティでこのようにしてください

        Intent myintent = getIntent();
        if(null != myintent.getExtras())
        {
              // do your work here 
        String path = myintent.getExtras().getString("mypath");          
        }
        else
        {
              // not here you can't get values
               Toast.makeText(getApplicationContext(),"No Recor Here..",12).show();    
        }
于 2012-09-22T08:43:05.693 に答える
0

2 番目のアクティビティでは、自分のコードの代わりにこのコードを試してください。

path = _intent.getString("mypath");

(また)

Bundle bundle = this.getIntent().getExtras();
String pic = bundle.getString("mypath");

URI の代わりに画像を渡したい場合は、このコードを試してください

最初のアクティビティでは、

 Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.icon);

        Intent intent = new Intent();
        intent.setClass(AndroidPassingBitmap.this, AndroidReceiveBitmap.class);
        intent.putExtra("Bitmap", bitmap);
        startActivity(intent);

2 番目のアクティビティでは、

Bitmap bitmap = (Bitmap)this.getIntent().getParcelableExtra("Bitmap");
  ImageView viewBitmap = (ImageView)findViewById(R.id.bitmapview);

  viewBitmap.setImageBitmap(bitmap);
于 2012-09-22T08:01:34.503 に答える
0

インテントからデータを取得するコードの下に記述します。これで問題が解決します。

Bundle bdl=getIntent().getExtras();
String path=bdl.getString("mypath");

詳細については、以下のリンクを参照してください。

Androidのアクティビティ間でビットマップを渡す

于 2012-09-22T08:04:18.953 に答える