0

当我试图将数据传递给另一个活动时,由于某种原因它会丢失。我的发送活动如下所示:

protected OnItemClickListener onArtistItemClick = new OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> adapter, View arg1, int cursor, long arg3) {
            Intent artistCardIntent = new Intent(getBaseContext(),  ArtistCardActivity.class);
            Artist artist = (Artist) adapter.getItemAtPosition(cursor);
            artistCardIntent.putExtra("artist_id", artist.getId());
            artistCardIntent.putExtra("tt", "tt");
            startActivity(artistCardIntent);
        };
    };

在调试时我可以看到artistCardIntent 被填充,但是在接收活动中我不包含任何额外的信息:

public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.artist_card);
            Intent i = getIntent();

我究竟做错了什么?

PS 这两个活动都扩展了 FragmentActivity。谢谢。

4

3 回答 3

1

要接收数据,请使用 getextras() 方法。找到以下代码。我认为它可以帮助你

       Intent i = getIntent();
       Bundle b=i.getExtras();
       if(b!=null)
      {
      String artist= ("artist_id");
          }
于 2012-05-23T13:31:59.850 回答
0

将这些值转换为字符串并尝试它,它会工作

startActivity(new Intent(Home.this,galmenu.class).putExtra("page","home"));

     Intent myIntent = getIntent(); 
     test=myIntent.getExtras().getString("page");

它运行良好

于 2012-05-23T13:06:13.070 回答
0

我没有看到你得到额外的信息。

查看此答案如何从 Android 上的意图中获取额外数据?

于 2012-05-23T13:08:20.500 回答