diff --git a/.gitignore b/.gitignore index 0f6ca2d..f8594be 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,4 @@ /captures .externalNativeBuild .idea +/sample/build diff --git a/library/build.gradle b/library/build.gradle index 2b9f02d..ac5057d 100644 --- a/library/build.gradle +++ b/library/build.gradle @@ -5,8 +5,8 @@ android { defaultConfig { minSdkVersion 15 targetSdkVersion 26 - versionCode 9 - versionName "1.1.1" + versionCode 10 + versionName "1.1.2" } buildTypes { release { @@ -27,7 +27,7 @@ publish { userOrg = 'ethanhua' groupId = 'com.ethanhua' artifactId = 'skeleton' - publishVersion = '1.1.1' + publishVersion = '1.1.2' bintrayUser = 'ethanhua' bintrayKey = '' desc = 'a library provider a easy way to show skeleton loading view' diff --git a/library/src/main/java/com/ethanhua/skeleton/ShimmerViewHolder.java b/library/src/main/java/com/ethanhua/skeleton/ShimmerViewHolder.java index 17be8d3..33c28ca 100644 --- a/library/src/main/java/com/ethanhua/skeleton/ShimmerViewHolder.java +++ b/library/src/main/java/com/ethanhua/skeleton/ShimmerViewHolder.java @@ -2,6 +2,7 @@ import android.support.v7.widget.RecyclerView; import android.view.LayoutInflater; +import android.view.View; import android.view.ViewGroup; /** @@ -13,6 +14,11 @@ public class ShimmerViewHolder extends RecyclerView.ViewHolder { public ShimmerViewHolder(LayoutInflater inflater, ViewGroup parent, int innerViewResId) { super(inflater.inflate(R.layout.layout_shimmer, parent, false)); ViewGroup layout = (ViewGroup) itemView; - inflater.inflate(innerViewResId, layout, true); + View view = inflater.inflate(innerViewResId, layout, false); + ViewGroup.LayoutParams lp = view.getLayoutParams(); + if (lp != null) { + layout.setLayoutParams(lp); + } + layout.addView(view); } } diff --git a/library/src/main/java/com/ethanhua/skeleton/ViewSkeletonScreen.java b/library/src/main/java/com/ethanhua/skeleton/ViewSkeletonScreen.java index 884f923..87226ba 100644 --- a/library/src/main/java/com/ethanhua/skeleton/ViewSkeletonScreen.java +++ b/library/src/main/java/com/ethanhua/skeleton/ViewSkeletonScreen.java @@ -42,6 +42,10 @@ private ShimmerLayout generateShimmerContainerLayout(ViewGroup parentView) { shimmerLayout.setShimmerAngle(mShimmerAngle); shimmerLayout.setShimmerAnimationDuration(mShimmerDuration); View innerView = LayoutInflater.from(mActualView.getContext()).inflate(mSkeletonResID, shimmerLayout, false); + ViewGroup.LayoutParams lp = innerView.getLayoutParams(); + if (lp != null) { + shimmerLayout.setLayoutParams(lp); + } shimmerLayout.addView(innerView); shimmerLayout.addOnAttachStateChangeListener(new View.OnAttachStateChangeListener() { @Override diff --git a/sample/build.gradle b/sample/build.gradle index b8264ba..381f0b5 100644 --- a/sample/build.gradle +++ b/sample/build.gradle @@ -24,7 +24,7 @@ dependencies { exclude group: 'com.android.support', module: 'support-annotations' }) //implementation project(':library') - implementation 'com.ethanhua:skeleton:1.1.1' + implementation 'com.ethanhua:skeleton:1.1.2' implementation 'io.supercharge:shimmerlayout:2.1.0' implementation 'com.android.support.constraint:constraint-layout:1.0.2' implementation 'com.android.support:recyclerview-v7:26.1.0'