Loading api/current.txt +2 −0 Original line number Diff line number Diff line Loading @@ -24102,9 +24102,11 @@ package android.view { ctor public ViewStub(android.content.Context, android.util.AttributeSet); ctor public ViewStub(android.content.Context, android.util.AttributeSet, int); method public int getInflatedId(); method public android.view.LayoutInflater getLayoutInflater(); method public int getLayoutResource(); method public android.view.View inflate(); method public void setInflatedId(int); method public void setLayoutInflater(android.view.LayoutInflater); method public void setLayoutResource(int); method public void setOnInflateListener(android.view.ViewStub.OnInflateListener); } core/java/android/view/LayoutInflater.java +8 −1 Original line number Diff line number Diff line Loading @@ -583,7 +583,14 @@ public abstract class LayoutInflater { Object[] args = mConstructorArgs; args[1] = attrs; return constructor.newInstance(args); final View view = constructor.newInstance(args); if (view instanceof ViewStub) { // always use ourselves when inflating ViewStub later final ViewStub viewStub = (ViewStub) view; viewStub.setLayoutInflater(this); } return view; } catch (NoSuchMethodException e) { InflateException ie = new InflateException(attrs.getPositionDescription() Loading core/java/android/view/ViewStub.java +27 −1 Original line number Diff line number Diff line Loading @@ -20,6 +20,7 @@ import android.content.Context; import android.content.res.TypedArray; import android.graphics.Canvas; import android.util.AttributeSet; import android.widget.RemoteViews.RemoteView; import com.android.internal.R; Loading Loading @@ -66,12 +67,14 @@ import java.lang.ref.WeakReference; * @attr ref android.R.styleable#ViewStub_inflatedId * @attr ref android.R.styleable#ViewStub_layout */ @RemoteView public final class ViewStub extends View { private int mLayoutResource = 0; private int mInflatedId; private WeakReference<View> mInflatedViewRef; private LayoutInflater mInflater; private OnInflateListener mInflateListener; public ViewStub(Context context) { Loading Loading @@ -140,6 +143,7 @@ public final class ViewStub extends View { * @see #getInflatedId() * @attr ref android.R.styleable#ViewStub_inflatedId */ @android.view.RemotableViewMethod public void setInflatedId(int inflatedId) { mInflatedId = inflatedId; } Loading Loading @@ -172,10 +176,26 @@ public final class ViewStub extends View { * @see #inflate() * @attr ref android.R.styleable#ViewStub_layout */ @android.view.RemotableViewMethod public void setLayoutResource(int layoutResource) { mLayoutResource = layoutResource; } /** * Set {@link LayoutInflater} to use in {@link #inflate()}, or {@code null} * to use the default. */ public void setLayoutInflater(LayoutInflater inflater) { mInflater = inflater; } /** * Get current {@link LayoutInflater} used in {@link #inflate()}. */ public LayoutInflater getLayoutInflater() { return mInflater; } @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { setMeasuredDimension(0, 0); Loading @@ -199,6 +219,7 @@ public final class ViewStub extends View { * @see #inflate() */ @Override @android.view.RemotableViewMethod public void setVisibility(int visibility) { if (mInflatedViewRef != null) { View view = mInflatedViewRef.get(); Loading Loading @@ -228,7 +249,12 @@ public final class ViewStub extends View { if (viewParent != null && viewParent instanceof ViewGroup) { if (mLayoutResource != 0) { final ViewGroup parent = (ViewGroup) viewParent; final LayoutInflater factory = LayoutInflater.from(mContext); final LayoutInflater factory; if (mInflater != null) { factory = mInflater; } else { factory = LayoutInflater.from(mContext); } final View view = factory.inflate(mLayoutResource, parent, false); Loading Loading
api/current.txt +2 −0 Original line number Diff line number Diff line Loading @@ -24102,9 +24102,11 @@ package android.view { ctor public ViewStub(android.content.Context, android.util.AttributeSet); ctor public ViewStub(android.content.Context, android.util.AttributeSet, int); method public int getInflatedId(); method public android.view.LayoutInflater getLayoutInflater(); method public int getLayoutResource(); method public android.view.View inflate(); method public void setInflatedId(int); method public void setLayoutInflater(android.view.LayoutInflater); method public void setLayoutResource(int); method public void setOnInflateListener(android.view.ViewStub.OnInflateListener); }
core/java/android/view/LayoutInflater.java +8 −1 Original line number Diff line number Diff line Loading @@ -583,7 +583,14 @@ public abstract class LayoutInflater { Object[] args = mConstructorArgs; args[1] = attrs; return constructor.newInstance(args); final View view = constructor.newInstance(args); if (view instanceof ViewStub) { // always use ourselves when inflating ViewStub later final ViewStub viewStub = (ViewStub) view; viewStub.setLayoutInflater(this); } return view; } catch (NoSuchMethodException e) { InflateException ie = new InflateException(attrs.getPositionDescription() Loading
core/java/android/view/ViewStub.java +27 −1 Original line number Diff line number Diff line Loading @@ -20,6 +20,7 @@ import android.content.Context; import android.content.res.TypedArray; import android.graphics.Canvas; import android.util.AttributeSet; import android.widget.RemoteViews.RemoteView; import com.android.internal.R; Loading Loading @@ -66,12 +67,14 @@ import java.lang.ref.WeakReference; * @attr ref android.R.styleable#ViewStub_inflatedId * @attr ref android.R.styleable#ViewStub_layout */ @RemoteView public final class ViewStub extends View { private int mLayoutResource = 0; private int mInflatedId; private WeakReference<View> mInflatedViewRef; private LayoutInflater mInflater; private OnInflateListener mInflateListener; public ViewStub(Context context) { Loading Loading @@ -140,6 +143,7 @@ public final class ViewStub extends View { * @see #getInflatedId() * @attr ref android.R.styleable#ViewStub_inflatedId */ @android.view.RemotableViewMethod public void setInflatedId(int inflatedId) { mInflatedId = inflatedId; } Loading Loading @@ -172,10 +176,26 @@ public final class ViewStub extends View { * @see #inflate() * @attr ref android.R.styleable#ViewStub_layout */ @android.view.RemotableViewMethod public void setLayoutResource(int layoutResource) { mLayoutResource = layoutResource; } /** * Set {@link LayoutInflater} to use in {@link #inflate()}, or {@code null} * to use the default. */ public void setLayoutInflater(LayoutInflater inflater) { mInflater = inflater; } /** * Get current {@link LayoutInflater} used in {@link #inflate()}. */ public LayoutInflater getLayoutInflater() { return mInflater; } @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { setMeasuredDimension(0, 0); Loading @@ -199,6 +219,7 @@ public final class ViewStub extends View { * @see #inflate() */ @Override @android.view.RemotableViewMethod public void setVisibility(int visibility) { if (mInflatedViewRef != null) { View view = mInflatedViewRef.get(); Loading Loading @@ -228,7 +249,12 @@ public final class ViewStub extends View { if (viewParent != null && viewParent instanceof ViewGroup) { if (mLayoutResource != 0) { final ViewGroup parent = (ViewGroup) viewParent; final LayoutInflater factory = LayoutInflater.from(mContext); final LayoutInflater factory; if (mInflater != null) { factory = mInflater; } else { factory = LayoutInflater.from(mContext); } final View view = factory.inflate(mLayoutResource, parent, false); Loading