soren.qvist
soren.qvist

Reputation: 7416

Getting the context inside a custom view?

I have made a small custom view component:

public class ActionBar extends RelativeLayout
{

    public ActionBar(Context context, AttributeSet attrs)
    {
        super(context, attrs);

        // .. custom logic here
    }

    private class homeButtonListener implements OnClickListener
    {

        @Override
        public void onClick(View v)
        {
            // how do i get the context here?
        }

    }

}

Every ActionBar component comes with a home-button, so I thought it would be appropriate to put it's onClickListener inside the view definition itself. The button should return the user to the main activity when clicked, but I need a Context in order to start activities. Can I create a local reference to the context passed in the constructor, without running into a mess of memory leaks?

Upvotes: 27

Views: 18485

Answers (1)

Noel
Noel

Reputation: 7410

The view has a method to get the context. See the android API for getContext().

Upvotes: 46

Related Questions