Android从另一个类获取数据

时间:2013-07-17 08:35:53

标签: android

我开始使用Android了。我想从另一个班级获取数据。我写了一些代码,但是没有用。请帮帮我。

第一项活动:

Button b1=(Button) findViewById(R.id.search);

    b1.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View arg0) {
        Intent a=new Intent(CActivity.this,Db.class);
        a.putExtra("data",bcode);
         startActivity(a);
        }});

第二项活动:

Bundle extra=getIntent().getExtras();
    {
    dContents=extra.getString("data");
    }

6 个答案:

答案 0 :(得分:0)

在第二个活动中,删除所有代码以从意图中获取数据并尝试此

dContents = getIntent().getStringExtra("data");

我假设数据是字符串。

答案 1 :(得分:0)

尝试

dContents=getIntent().getStringExtra("data");

而不是

Bundle extra=getIntent().getExtras();
    {
    dContents=extra.getString("data");
    }

希望这有帮助。

答案 2 :(得分:0)

在第二类文件中执行此操作。

Intent i = getIntent();

String str = i.getExtra("data"); 

答案 3 :(得分:0)

这对我有用

第一项活动(设置数据并启动活动)

           String shocode="0003";
           String shopname="CCT";
           Intent i = new  Intent(getApplicationContext(),Frame_unproductuv.class);       
                    i.putExtra("shopcode", shocode);
                    i.putExtra("shopname", shopname);
                    startActivity(i);

第二项活动(获取数据)

              Intent intent = getIntent();
              Bundle b = intent.getExtras();
              route_name = b.getString("shopname");

答案 4 :(得分:0)

尝试:

// store data to be pass to next activity
Intent mIntent = new Intent(this, SecondActivity.class);
mIntent.putExtra("key", yourString);
startActivity(mIntent);


// extract data from previous activity
if (getIntent() != null) {
String mString = getIntent().getExtras().getString("key");
    // do what you going to do with string.
} else {
    Toast.makeText(getApplicationContext(), "getIntent() = null", Toast.LENGTH_LONG).show();
}

我相信如果您使用Bundle来检索字符串,则必须使用getStringExtra(),如果您使用Intent来检索数据,则使用getString()。

答案 5 :(得分:0)

为什么不将数据保存为第一个类中的字符串,然后只需从第二个

中检索它
String shopname = "enteredshopname";

然后从你的第二堂课

String getShopName = MainActiviy.shopname;

然后你可以做任何你需要的setText等