ThemableWidget.java revision dc3d0176993003aa949f0baf61327f1096f453d8
1package com.android.layoutlib.test.myapplication; 2 3import android.content.Context; 4import android.util.AttributeSet; 5import android.view.ContextThemeWrapper; 6import android.view.LayoutInflater; 7import android.widget.FrameLayout; 8 9public class ThemableWidget extends FrameLayout { 10 public ThemableWidget(Context context) { 11 super(context); 12 13 init(); 14 } 15 16 public ThemableWidget(Context context, AttributeSet attrs) { 17 super(context, attrs); 18 19 init(); 20 } 21 22 public ThemableWidget(Context context, AttributeSet attrs, int defStyleAttr) { 23 super(context, attrs, defStyleAttr); 24 25 init(); 26 } 27 28 public ThemableWidget(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) { 29 super(context, attrs, defStyleAttr, defStyleRes); 30 31 init(); 32 } 33 34 private void init() { 35 ContextThemeWrapper context = new ContextThemeWrapper(getContext(), getContext().getTheme()); 36 context.setTheme(R.style.ThemableWidgetStyle); 37 38 LayoutInflater.from(context).inflate(R.layout.themable_widget_layout, this); 39 } 40} 41