I am just wondering what ways there are to pass two or more double values from classA to ClassB
at the minute i have found code that give me this method:
double a, b;
double a = 2.456;
double b = 764.2353;
Intent i = new Intent();
i.setClassName("com.b00348312.application","com.b00348312.application.ClassB");
double number = getIntent().getDoubleExtra("value1", a);
double number = getIntent().getDoubleExtra("value2", b);
startActivity(i);
This does not pass the values through nor can i find a way of retrieving these values
Another question on here suggested the method of creating an instance of the class but trying that i cant seem to pass the values through properly.
I am programming for Android, so I don't know if the method will be different
You're not actually placing your doubles into your Intent
Intent yourInent = new Intent(thisActivity.this, nextActivity.class);
Bundle b = new Bundle();
b.putDouble("key", doubleVal);
yourIntent.putExtras(b);
startActivity(yourIntent);
Then, get it in your next Activity:
Bundle b = getIntent().getExtras();
double result = b.getDouble("key");
You can try by this way
double a, b;
Intent i = new Intent(classA.this, classB.class);
Bundle params = new Bundle();
params.putDouble("doubleA", a);
params.putDouble("doubleB", b);
i.putExtras(params);
startActivity(i);
At other side you need something like this
double a, b;
// Get Params from intent
Intent it = getIntent();
if (it != null)
{
Bundle params = it.getExtras();
if (params != null)
{
a = params.getDouble("doubleA");
b = params.getDouble("doubleB");
}
}
This is nearly the correct technique for sending information between Activities. You need to use the putDouble() method like so:
i.putDouble("value1", a);
i.putDouble("value2", b);
In order to access these values you need to pull them out of the Extras map on the receiving Activity end like so:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main2);
Intent intent=getIntent();
double a=intent.getExtras().getDouble("value1");
double b=intent.getExtras().getDouble("value2");
You need to use:
i.putExtra("number1", number1);
i.putExtra("number2", number1);