FORUMS

HTC’s New Ad Campaign And What It Really Means

HTC has just released three new blind test adverts comparing app loading … more

XDA Picks: Best Apps of the Week (June 27 – July 4)

Apps are at the front and center of any smartphone experience, and with over a … more

HTC One M9 Developer Edition Android 5.1 OTA

The Developer Edition of the HTC One M9 is receiving an over-the-air update to Android 5.1. … more

Index Project For XDA Device Subforums

Another ambitious project from the collaborative efforts of Recognized Contributors and Forum … more

[Q] Set BackgroundColor but keep onTouch

45 posts
Thanks Meter: 0
 
By Auroratic, Member on 20th March 2014, 05:53 PM
Post Reply Subscribe to Thread Email Thread
Hello,
I want to set the BackgroundColor of ListView items, but I want to keep the color which appears when I click the items.

How can I do that?
 
 
20th March 2014, 11:34 PM |#2  
deanwray's Avatar
Senior Member
Thanks Meter: 429
 
Donate to Me
More
Quote:
Originally Posted by Auroratic

Hello,
I want to set the BackgroundColor of ListView items, but I want to keep the color which appears when I click the items.

How can I do that?

Rather than replace a "stateListDrawable" with a color or static drawable, replace it with another state list that has the "states" you require
21st March 2014, 10:36 PM |#3  
Auroratic's Avatar
OP Member
Flag Austria
Thanks Meter: 0
 
More
Quote:
Originally Posted by deanwray

Rather than replace a "stateListDrawable" with a color or static drawable, replace it with another state list that has the "states" you require

I've got it, but I have one problem: The colour on state_pressed should be the default system colour (this one: android.R.drawable.list_selector_background)
How can I do that?
Last edited by Auroratic; 22nd March 2014 at 01:22 AM.
22nd March 2014, 03:11 AM |#4  
deanwray's Avatar
Senior Member
Thanks Meter: 429
 
Donate to Me
More
Quote:
Originally Posted by Auroratic

I've got it, but I have one problem: The colour on state_pressed should be the default system colour (this one: android.R.drawable.list_selector_background)
How can I do that?

I'm not sure what your asking, if you have read about stateListDrawabes and have understood it, also maybe even looked at examples, then you should know ? Open that resource, or even clone it and edit it how you want.
22nd March 2014, 11:50 AM |#5  
Auroratic's Avatar
OP Member
Flag Austria
Thanks Meter: 0
 
More
Quote:
Originally Posted by deanwray

I'm not sure what your asking, if you have read about stateListDrawabes and have understood it, also maybe even looked at examples, then you should know ? Open that resource, or even clone it and edit it how you want.

I have the following:
Code:
StateListDrawable stateList = new StateListDrawable();
stateList.addState(new int[] {
   android.R.attr.state_pressed
}, new ColorDrawable(android.R.drawable.btn_default));

stateList.addState(new int[0], new ColorDrawable(Color.YELLOW));
textView.setBackgroundDrawable(stateList);
The background is yellow, but when I press on the textView, the background turns into transparent (it should be like this when i press:
)
22nd March 2014, 01:35 PM |#6  
deanwray's Avatar
Senior Member
Thanks Meter: 429
 
Donate to Me
More
Quote:
Originally Posted by Auroratic

I have the following:

Code:
StateListDrawable stateList = new StateListDrawable();
stateList.addState(new int[] {
   android.R.attr.state_pressed
}, new ColorDrawable(android.R.drawable.btn_default));

stateList.addState(new int[0], new ColorDrawable(Color.YELLOW));
textView.setBackgroundDrawable(stateList);
The background is yellow, but when I press on the textView, the background turns into transparent (it should be like this when i press:
)

well fyi you should look at the view type "states" as not sure you want android.R.attr.state_pressed ... neways you probably want state_focused and state_enabled for an editText view, but really google should provide you with simple absolute answers

hope that clears it up neways
22nd March 2014, 02:05 PM |#7  
Auroratic's Avatar
OP Member
Flag Austria
Thanks Meter: 0
 
More
Quote:
Originally Posted by deanwray

well fyi you should look at the view type "states" as not sure you want android.R.attr.state_pressed ... neways you probably want state_focused and state_enabled for an editText view, but really google should provide you with simple absolute answers

hope that clears it up neways

I have that now:
Code:
StateListDrawable stateList = new StateListDrawable();
        stateList.addState(new int[] {
            android.R.attr.state_pressed
        }, context.getResources().getDrawable(android.R.drawable.list_selector_background));
but when I press on the TextView, the background goes orange
Last edited by Auroratic; 22nd March 2014 at 02:26 PM.
22nd March 2014, 02:31 PM |#8  
deanwray's Avatar
Senior Member
Thanks Meter: 429
 
Donate to Me
More
Quote:
Originally Posted by Auroratic

I have that now:

Code:
StateListDrawable stateList = new StateListDrawable();
        stateList.addState(new int[] {
            android.R.attr.state_pressed
        }, context.getResources().getDrawable(android.R.drawable.list_selector_background));
but when I press on the TextView, the background goes orange

now your setting a state with a state "list" so not sure that will ever work.. needs to be a simple drawable
Post Reply Subscribe to Thread
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes