2016-09-06 198 views
0

我想在两个活动之间传递一个字符串,但是当我收到字符串时,我得到一个空值。 我在其他活动中使用相同的代码并且完美地工作。任何建议?bundle.getString()返回空值

第一项活动:

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    setContentView(R.layout.activity_post); 





    Glide.with(PostCarrete.this).load(foto) 
      .centerCrop() 
      .into(imagen); 

    next = (ImageView) findViewById(R.id.next) ; 
    next.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 

      Intent intent = new Intent(PostCarrete.this, Compartir.class); 
      intent.putExtra("foton",foto); 
      startActivity(intent); 

     } 
    }); 
} 

次活动:

Bundle bundle = getIntent().getExtras(); 
    foto = bundle.getString("foton"); 

这里包的价值是零,所以照片太

+0

为什么你写Bundle bundle = getIntent()。getExtras(); foto = bundle.getString(“foto”);在第一个活动?在哪个活动中bundle的值为null? –

+0

你在哪里存储该字符串,在哪个活动? – Stanojkovic

+0

也许'getIntent()。getStringExtra(“foton”)'? – Gudin

回答

0

我觉得应该是:

String foto = getIntent().getStringExtra("foton"); 

因为y ou正在发送作为额外