Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 7872731
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 3, 20262026-06-03T02:17:46+00:00 2026-06-03T02:17:46+00:00

I’m getting syntax errors when using ScaleDrawable(). I must be doing something wrong. Any

  • 0

I’m getting syntax errors when using ScaleDrawable(). I must be doing something wrong.
Any ideas?

2 errors I can’t quite fix.

This is what I have at the moment:

protected class testbuttonBackgroundDrawable extends LayerDrawable {
/** my aim - the image used as background for the custom view is increased in
 *size by 25percent and then a yellow color filter is attached to it.
 *This yellow image then has the original background image layered on top of it
 *to create the effect of the image having a glow around it
 *I want to use this later on for when the custom button has focus
 */     
    ColorFilter colourFilter = new LightingColorFilter(Color.YELLOW, 1);

    ScaleDrawable resizedImage = new ScaleDrawable(background, 0, 1.25f, 1.25f);*

*error here is – Syntax error on token “;”, { expected after this token

    nD = resizedImage.getDrawable();
    nD.setColorFilter(colourFilter);

    Drawable[] aD = new Drawable[2];
    aD[0] = nD;
    aD[1] = background;
    LayerDrawable _highlightedDrawable = new LayerDrawable(aD);

//This will make the background image fade if the button is set to disabled
    protected int _disabledAlpha = 100;
/**This is another scale drawable, this time used to shrink the background image of
 *the custom button when it is pressed
 */
    protected ScaleDrawable _pressedDrawable = new ScaleDrawable(background, 0, 0.75f, 0.75f);*

*error here is – “Syntax error, insert “}” to complete Block”

    public testbuttonBackgroundDrawable(Drawable d) {
          super(new Drawable[] { d });
    }

    @Override
    protected boolean onStateChange(int[] states) {
      boolean enabled = false;
      boolean highlighted = false;
      boolean pressed = false;

      for (int state : states) {
        if (state == android.R.attr.state_enabled)
            enabled = true;
        else if (state == android.R.attr.state_selected)
            highlighted = true;
        else if (state == android.R.attr.state_pressed)
            pressed = true;
      }

      mutate();
      if (enabled && highlighted) {
        setBackgroundDrawable(_highlightedDrawable); // buttons need transparent backgrounds
      } else if (!enabled) {
        setColorFilter(null);
        setAlpha(_disabledAlpha);
      } else if (enabled && pressed){
        setBackgroundDrawable(_pressedDrawable);
      } else {
        setColorFilter(null);
      }

      invalidateSelf();

      return super.onStateChange(states);
    }

}

}

Any help with fixing the errors would be appreciated.

I think I’m not using the ScaleDrawable constructor properly.

How do I do this correctly?

If that’s not the problem then any help would be appreciated.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-03T02:17:48+00:00Added an answer on June 3, 2026 at 2:17 am

    fixed it!

    The problem was that I was doing my calculations for my button states in the wrong section of the layer drawable class. This is it fixed:

    protected class CustomImageButtonBackgroundDrawable extends LayerDrawable { 
    
        protected Drawable lowerlayer;
        protected Drawable _highlightedDrawable;
    
        protected int _disabledAlpha = 100;
        protected Drawable _pressedDrawable;
    
    
        public CustomImageButtonBackgroundDrawable(Drawable d) {
              super(new Drawable[] { d });
        }
    
        @Override
        protected boolean onStateChange(int[] states) {
          boolean enabled = false;
          boolean highlighted = false;
          boolean pressed = false;
    
          for (int state : states) {
            if (state == android.R.attr.state_enabled)
                enabled = true;
            else if (state == android.R.attr.state_selected)
                highlighted = true;
            else if (state == android.R.attr.state_pressed)
                pressed = true;
          }
    
          mutate();
          if (enabled && highlighted) {
            ColorFilter colourFilter = new LightingColorFilter(Color.YELLOW, 1);
            ScaleDrawable resizedImage = new ScaleDrawable(background, 0, 1.25f, 1.25f);
    
            lowerlayer = resizedImage.getDrawable();
            lowerlayer.setColorFilter(colourFilter);
    
            Drawable[] aD = new Drawable[2];
            aD[0] = lowerlayer;
            aD[1] = background;
            LayerDrawable _highlightedDrawable = new LayerDrawable(aD);
    
            setBackgroundDrawable(_highlightedDrawable); // buttons need transparent backgrounds
    
          } else if (!enabled) {
            setColorFilter(null);
            setAlpha(_disabledAlpha);
    
          } else if (enabled && pressed){
            ScaleDrawable smaller = new ScaleDrawable(background, 0, 0.75f, 0.75f);
    
            setBackgroundDrawable(smaller.getDrawable());
    
          } else {
            setColorFilter(null);
          }
    
          invalidateSelf();
    
          return super.onStateChange(states);
        }
    
    }
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I'm new to using the Perl treebuilder module for HTML parsing and can't figure
link Im having trouble converting the html entites into html characters, (&# 8217;) i
That's pretty much it. I'm using Nokogiri to scrape a web page what has
I have a jquery bug and I've been looking for hours now, I can't
I have a string like this: La Torre Eiffel paragonata all’Everest What PHP function
I am reading a book about Javascript and jQuery and using one of the
I'm using v2.0 of ClassTextile.php, with the following call: $testimonial_text = $textile->TextileRestricted($_POST['testimonial']); ... and
I am doing a simple coin flipping experiment for class that involves flipping a
I'm parsing an RSS feed that has an ’ in it. SimpleXML turns this
We're building an app, our first using Rails 3, and we're having to build

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.