Shishir.bobby
Shishir.bobby

Reputation: 10984

How to pass value through Intent

HI all, this is my class A, where on button click , i m sending a int variable to class B

Intent bgIntent = new Intent(Background.this, MainScreen.class);
bgIntent.putExtra("background",  bgColor);
startActivity(bgIntent);

and on class B

Intent bgIntent = getIntent();
bgGlobal = bgIntent.getIntExtra("background",-1 );

if(bgGlobal == 0) 
{
   DetailsTextView.setBackgroundResource(R.color.a0);
}
else 
    if(bgGlobal == 1)
    {
        DetailsTextView.setBackgroundResource(R.color.a1);
    }

But the problem is i am getting a blank view.My view is not coming up with textview. is this proper to set background

"DetailsTextView.setBackgroundResource"???

Upvotes: 1

Views: 6632

Answers (1)

Maragues
Maragues

Reputation: 38324

If you want to change the color of a View use http://developer.android.com/reference/android/view/View.html#setBackgroundColor(int)

for example:

DetailsTextView.setBackgroundColor(getResources().getColor(R.color.txt_green));

Anyway, it's not clear if you want to change the screen's background or the textview's background.

Also

if(bgGlobal == 0){...} else ...

is wrong. You should do something of the like

if(bgGlobal != -1)
{
 [Use intent to read color]
}else{
 [set default color]
}

If you see a blank view it's possibly due to a wrong XML layout.

Edit: To retrieve the extra

getIntent().getExtras().getInt("background",-1);

Upvotes: 1

Related Questions