无法传输我点击的行中的数据

时间:2015-07-09 06:33:48

标签: java android android-layout android-intent android-activity

我有一个列表,我想在另一页上显示我从列表中选择的图片和名称。当我点击一个项目它转到第二页但没有给出图片或名称。页面上没有任何内容。怎么解决呢?我做错了什么?

在我的主要活动课程中:

theList.setOnItemClickListener(new OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            Person x = persons.get(position);
            Intent intent = new Intent(cnt, page2.class);
            intent.putExtra("name", x.getName());
            intent.putExtra("gender", x.isWomen());

            startActivity(intent);
        }
    });

我的第二页课:

public class page2 extends Activity {
private ImageView imView;
private TextView tView;

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

    imView = (ImageView) findViewById(R.id.page2Image);
    tView = (TextView) findViewById(R.id.page2Text);

    Rum();
}

private void Rum(){

    Intent i = getIntent();
    String name = i.getStringExtra("name");
    boolean gender = i.getBooleanExtra("gender",false);    }
}

1 个答案:

答案 0 :(得分:2)

正如卡佩勒在评论中所说的那样;

您应该为onCreate中调用的视图指定名称和性别。

对于TextView,只需调用.settext(&#34; name&#34;),我假设您想要显示性别图像而不是布尔值,那么您必须使用if (性别)声明在使用.setImageBitmap()填充ImageView之前,如果使用Bitmaps或.setImageDrawable(),则使用Drawables。