/** * Show this button at the specific location. If this button isn't attached to any parent view yet, * it will be add to activity's root view. If not, it will just update the location. * @param parent The parent view. Should be {@link FrameLayout} or {@link RelativeLayout} * @param x The x value of anchor point. * @param y The y value of anchor point. * @param gravity The gravity apply with this button. * * @see Gravity */ public void show(ViewGroup parent, int x, int y, int gravity){ if(getParent() == null){ ViewGroup.LayoutParams params = parent.generateLayoutParams(null); params.width = mBackground.getIntrinsicWidth(); params.height = mBackground.getIntrinsicHeight(); updateParams(x, y, gravity, params); parent.addView(this, params); } else updateLocation(x, y, gravity); }
@Override public LayoutParams generateLayoutParams(AttributeSet attrs) { return super.generateLayoutParams(attrs); }
@Override public LayoutParams generateLayoutParams(AttributeSet attrs) { return super.generateLayoutParams(attrs); } }
final View view = createViewFromTag(parent, name, attrs); final ViewGroup viewGroup = (ViewGroup) parent; final ViewGroup.LayoutParams params = viewGroup.generateLayoutParams(attrs);
@Override protected ViewGroup.LayoutParams generateLayoutParams( ViewGroup.LayoutParams p) { return new LayoutParams(super.generateLayoutParams(p)); }
@Override protected ViewGroup.LayoutParams generateLayoutParams(ViewGroup.LayoutParams p) { return new LayoutParams(super.generateLayoutParams(p)); }
@Override public ViewGroup.LayoutParams generateLayoutParams(AttributeSet attrs) { return new LayoutParams(super.generateLayoutParams(attrs)); }
private ViewGroup.LayoutParams generateDefaultLayoutParams(@NonNull ViewGroup parent) { /** * This whole method is a hack! To generate layout params, since no other way exists. * Refer : http://stackoverflow.com/questions/7018267/generating-a-layoutparams-based-on-the-type-of-parent */ if (null == sParser) { synchronized (ViewTypeParser.class) { if (null == sParser) { initializeAttributeSet(parent); } } } return parent.generateLayoutParams(sParser); }
@Override public ViewGroup.LayoutParams generateLayoutParams(AttributeSet attrs) { return new LayoutParams(super.generateLayoutParams(attrs)); }
@Override public ViewGroup.LayoutParams generateLayoutParams(final AttributeSet attrs) { return new LayoutParams(super.generateLayoutParams(attrs)); }
@Override protected ViewGroup.LayoutParams generateLayoutParams(final ViewGroup.LayoutParams p) { return new LayoutParams(super.generateLayoutParams(p)); }
@Override public ViewGroup.LayoutParams generateLayoutParams(AttributeSet attrs) { return new LayoutParams(super.generateLayoutParams(attrs)); }
@Override protected ViewGroup.LayoutParams generateLayoutParams(ViewGroup.LayoutParams p) { return new LayoutParams(super.generateLayoutParams(p)); }