diff --git a/README.md b/README.md index 9b53937..a42dc4d 100644 --- a/README.md +++ b/README.md @@ -134,6 +134,7 @@ setPopupMargin|Int|1|设置弹出时和view的距离 setClickView|View|null|设置长按事件的view setAnim|Int|WPopupAnim.ANIM_ALPHA|设置动画 setIconDirection|Int|WPopupDirection.LEFT|设置icon的方向 如果data中设置了图片的话 +setDrawablePadding|Int|5|设置drawablePadding setTextColor|Int|Color.WHITE|设置item中text的颜色 setTextSize|Int|14|设置item中text的大小 diff --git a/app/src/main/java/com/wanglu/wpopup/MainActivity.kt b/app/src/main/java/com/wanglu/wpopup/MainActivity.kt index cc92942..97849fc 100644 --- a/app/src/main/java/com/wanglu/wpopup/MainActivity.kt +++ b/app/src/main/java/com/wanglu/wpopup/MainActivity.kt @@ -54,6 +54,7 @@ class MainActivity : AppCompatActivity() { .setData(friendCircleData) .setAnim(WPopupAnim.ANIM_FRIEND_CIRCLE) .setIconDirection(WPopupDirection.LEFT) + .setDrawablePadding(20) .setPopupOrientation(WPopup.Builder.HORIZONTAL) .setOnItemClickListener(object : WPopup.Builder.OnItemClickListener { override fun onItemClick(view: View, position: Int) { diff --git a/lib/src/main/java/com/wanglu/lib/WPopParams.kt b/lib/src/main/java/com/wanglu/lib/WPopParams.kt index 5e519ce..e49d03a 100644 --- a/lib/src/main/java/com/wanglu/lib/WPopParams.kt +++ b/lib/src/main/java/com/wanglu/lib/WPopParams.kt @@ -26,6 +26,7 @@ data class WPopParams( var commonItemTextSize = 14 var commonPopMargin = 1 var commonIconDirection = WPopupDirection.LEFT // 传入的图片的位置 + var commonDraablePadding = 5 var longClickView: View? = null //长按点击事件的View var animRes = WPopupAnim.ANIM_ALPHA // 动画 } \ No newline at end of file diff --git a/lib/src/main/java/com/wanglu/lib/WPopup.kt b/lib/src/main/java/com/wanglu/lib/WPopup.kt index 292852b..ddaff37 100644 --- a/lib/src/main/java/com/wanglu/lib/WPopup.kt +++ b/lib/src/main/java/com/wanglu/lib/WPopup.kt @@ -32,6 +32,7 @@ class WPopup(popParams: WPopParams) : BasePopup(popParams) { commonAdapter.setDirection(popParams.commonIconDirection) commonAdapter.setTextColor(popParams.commonItemTextColor) commonAdapter.setTextSize(popParams.commonItemTextSize) + commonAdapter.setDrawablePadding(popParams.commonDraablePadding) recyclerView = getContentView().findViewById(R.id.mRvCommon) commonRootLayout = getContentView().findViewById(R.id.mCommonRootLayout) recyclerView.adapter = commonAdapter @@ -273,6 +274,11 @@ class WPopup(popParams: WPopParams) : BasePopup(popParams) { return this } + fun setDrawablePadding(padding: Int): Builder{ + popParams.commonDraablePadding = padding + return this + } + /** * 构建 */ diff --git a/lib/src/main/java/com/wanglu/lib/WPopupAdapter.kt b/lib/src/main/java/com/wanglu/lib/WPopupAdapter.kt index 8256f86..39a9975 100644 --- a/lib/src/main/java/com/wanglu/lib/WPopupAdapter.kt +++ b/lib/src/main/java/com/wanglu/lib/WPopupAdapter.kt @@ -14,28 +14,34 @@ class WPopupAdapter(private val popup: WPopup) : RecyclerView.Adapter) { mData = data notifyDataSetChanged() } - fun setDirection(d: Int){ + fun setDirection(d: Int) { direction = d notifyDataSetChanged() } - fun setTextColor(color: Int){ + fun setTextColor(color: Int) { textColor = color notifyDataSetChanged() } - fun setTextSize(size: Int){ + fun setTextSize(size: Int) { this.textSize = size notifyDataSetChanged() } + fun setDrawablePadding(padding: Int) { + this.drawablePadding = padding + notifyDataSetChanged() + } + fun setItemClickListener(wItemClickListener: WPopup.Builder.OnItemClickListener) { this.mWItemClickListener = wItemClickListener } @@ -69,6 +75,7 @@ class WPopupAdapter(private val popup: WPopup) : RecyclerView.Adapter holder.tv.setCompoundDrawablesWithIntrinsicBounds(drawable, null, null, null) WPopupDirection.RIGHT -> holder.tv.setCompoundDrawablesWithIntrinsicBounds(null, null, drawable, null) } + holder.tv.compoundDrawablePadding = Utils.dp2px(holder.tv.context, drawablePadding) } }