Страница 1 из 1

не вижу ошибку - передача целого значения во второе Активити

Добавлено: 06 ноя 2012, 22:44
Foenix
Вызываю второе активити из первого:

Код: Выделить всё

 Intent intent = new Intent();
			    intent.setClass(MainActivity.this,  SecondActivity.class);
			    Bundle b = new Bundle();
			    b.putInt(SecondActivity.ID,id);
			     System.out.println("id*"+id);
			    b.putString(SecondActivity.NAME, name);
			    System.out.println("name*"+name);
			    intent.putExtras(b);
			    startActivity(intent);
В отладчике печать по этому такая:
11-06 19:33:57.451: I/System.out(7987): id*2
11-06 19:33:57.451: I/System.out(7987): name*ИП Иванов Игорь Леонидович

Во втором пишу:

Код: Выделить всё

public static final String ID = "";
	public static final String NAME = "";
................
Bundle extras = getIntent().getExtras();
		int id = extras.getInt(ID);
		
		System.out.println("extras.getInt(ID)*"+extras.getInt(ID));
		System.out.println("extras.getString(ID)*"+extras.getString(ID));
		System.out.println("extras.getString(NAME)*"+extras.getString(NAME));
		TextView tvFirmaName = (TextView) findViewById(R.id.tvName);
		tvFirmaName.setText(extras.getString(NAME));
По этому печать такая:
11-06 19:33:57.721: I/System.out(7987): extras.getInt(ID)*0
11-06 19:33:57.731: I/System.out(7987): extras.getString(ID)*ИП Иванов Игорь Леонидович
11-06 19:33:57.731: I/System.out(7987): extras.getString(NAME)*ИП Иванов Игорь Леонидович

Как ни пробую - не вижу почему в целое ID передается нолик (должно быть 2)! И почему если взять его строкой - то имя попадает в ID??
меняла public static final String ID = ""; на int - не помогает :(

Re: не вижу ошибку - передача целого значения во второе Акти

Добавлено: 07 ноя 2012, 01:39
rezak90
зачем использовать бандл в данном примере? вы кладёте данные в бандл, потом бандл в интент и наоборот. зачем, если можно данные сразу в интент.

Re: не вижу ошибку - передача целого значения во второе Акти

Добавлено: 07 ноя 2012, 20:33
Foenix
да это уже стопятьдесятый способ просто был))) вначале так и было

Я нашла ошибку, косяк тут
public static final String ID = "";
public static final String NAME = "";
надо было имена давать, а я чето зациклилась на значениях, пыталась там нолики рисовать и объявлять ID целым. А оно меня ругает.. а я ниче не пойму.. ночь патамушта.