嗨,我正在使用捆绑将纬度,经度和地址传递给另一个活动。在另一个活动中,我正在从捆绑中检索数据。但是当我点击使用捆绑包的按钮时,应用程序崩溃了。我无法发布logcat,因为ddms中没有任何内容。我正在使用设备调试模式。继承我的代码:
Bundle b=new Bundle();
b.putString("latitude", lat+"");
b.putString("longitude", lon+"");
b.putString("address", result1);
Intent i=new Intent(Cortes.this,Display.class);
i.putExtras(b);
startActivity(i) ;
我在按钮的监听器中写这个,而Display是另一个活动。在那个活动中我的代码是:
Bundle b=this.getIntent().getExtras();
latitude=b.getString("latitude");
longitude=b.getString("longitude");
address=b.getString("address");
我正在tablelayout
中显示该活动中的数据库。
光标,我已经写了另一个名为Display.in cursor的活动我正在使用我传递给另一个活动的值
请帮助
答案 0 :(得分:0)
检索这样的数据:
Bundle var_name = getIntent().getExtras().getBundle(key);
答案 1 :(得分:0)
试试这个
Bundle b = getIntent.getExtras();
或
Bundle b = ClassName.this.getIntent.getExtras();
答案 2 :(得分:0)
如果您使用自定义捆绑包,根据文档,似乎有一些要求:
The keys must include a package prefix, for example the app com.android.contacts would use names like "com.android.contacts.ShowAll".
我知道在活动之间共享数据的常用方法是使用默认的Intent包来存储它们,如下所示:
Intent i=new Intent(Cortes.this,Display.class);
i.putExtra("latitude", lat+"");
i.putExtra("longitude", lon+"");
i.putExtra("address", result1);
startActivity(i);
然后,你检索这样的信息:
Intent i=this.getIntent();
latitude=i.getStringExtra("latitude");
longitude=i.getStringExtra("longitude");
address=i.getStringExtra("address");