2017-07-22 160 views
-1

// ListSalesItemActivity(这是列表视图的活动,当我点击一个项目上市,我会去ViewDetailActivity与显示DATAS)无法传递对象到另一个对象的Android活动(与parcelable)

我能获取数据,但不能传递到另一个acticity和应用程序将停止

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_list_sale_item); 

    myContext = this; 


    salesLV = (ListView) findViewById(R.id.salesLV); 


    salesLV.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
     @Override 
     public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 

      Bundle bundle = new Bundle(); 


      Intent myIntent = new Intent(ListSaleItemActivity.this, SaleDetailActivity.class); 

      SaleObject SO = mc.SalesObjectList(getApplicationContext()).get(position); 
      Log.d("myTag", SO.getStrName());//able to get name 
      bundle.putString("Name", SO.getStrName()); 
      myIntent.putExtras(bundle); 
      startActivity(myIntent); 


     } 
    }); 

} 

// ViewDetailActivity

Intent i = getIntent(); 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_sale_detail); 
    { 

     Bundle bd = i.getExtras(); 
     String name = bd.getString("Name"); 
     Log.d("myTag", name);//does not print anything in logcat and application stopped. 

     //I tried this and also does not work 
     /*if(bd != null) 
     { 
      String getName = (String) bd.get("Name"); 
      Log.d("myTag", getName); 
     }else{ 
      Log.d("myTag", "1"); 
     }*/ 

    } 
} 
+0

很容易前找出错误都要经过编码,如果你有张贴日志(错误报告) –

回答

0

认沽I = getIntent();在onCreate()中。

Intent i; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 
setContentView(R.layout.activity_sale_detail); 
{ 

    i = getIntent(); 
    Bundle bd = i.getExtras(); 
    String name = bd.getString("Name"); 
    Log.d("myTag", name); 

} 

}

相关问题