方法 |
注释 |
get |
获取单例 ViewHelper |
viewHelper |
获取 ViewHelper |
devHelper |
获取 DevHelper |
postRunnable |
在主线程 Handler 中执行任务 |
removeRunnable |
在主线程 Handler 中清除任务 |
setHint |
设置 Hint 文本 |
setText |
设置文本 |
setTexts |
设置多个 TextView 文本 |
setHtmlText |
设置 Html 内容 |
setHtmlTexts |
设置多个 TextView Html 内容 |
setHintTextColor |
设置 Hint 字体颜色 |
setHintTextColors |
设置多个 TextView Hint 字体颜色 |
setTextColor |
设置字体颜色 |
setTextColors |
设置多个 TextView 字体颜色 |
setTypeface |
设置字体 |
setTextSizeByPx |
设置字体大小 - px 像素 |
setTextSizeBySp |
设置字体大小 - sp 缩放像素 |
setTextSizeByDp |
设置字体大小 - dp 与设备无关的像素 |
setTextSizeByIn |
设置字体大小 - inches 英寸 |
setTextSize |
设置字体大小 |
setTextSizes |
设置多个 TextView 字体大小 |
clearFlags |
清空 flags |
setBold |
设置 TextView 是否加粗 |
setUnderlineText |
设置下划线 |
setStrikeThruText |
设置中划线 |
setLetterSpacing |
设置文字水平间距 |
setLineSpacing |
设置文字行间距 ( 行高 ) |
setLineSpacingAndMultiplier |
设置文字行间距 ( 行高 )、行间距倍数 |
setTextScaleX |
设置字体水平方向的缩放 |
setIncludeFontPadding |
设置是否保留字体留白间隙区域 |
setInputType |
设置输入类型 |
setImeOptions |
设置软键盘右下角按钮类型 |
setLines |
设置行数 |
setMaxLines |
设置最大行数 |
setMinLines |
设置最小行数 |
setMaxEms |
设置最大字符宽度限制 |
setMinEms |
设置最小字符宽度限制 |
setEms |
设置指定字符宽度 |
setEllipsize |
设置 Ellipsize 效果 |
setAutoLinkMask |
设置自动识别文本链接 |
setAllCaps |
设置文本全为大写 |
setTextGravity |
设置 Text Gravity |
insert |
追加内容 ( 当前光标位置追加 ) |
setMaxLength |
设置长度限制 |
setMaxLengthAndText |
设置长度限制, 并且设置内容 |
setCursorVisible |
设置是否显示光标 |
setSelectionToTop |
设置光标在第一位 |
setSelectionToBottom |
设置光标在最后一位 |
setSelection |
设置光标位置 |
setTransformationMethod |
设置文本视图显示转换 |
addTextChangedListener |
添加输入监听事件 |
removeTextChangedListener |
移除输入监听事件 |
setKeyListener |
设置 KeyListener |
setAdjustViewBounds |
设置 ImageView 是否保持宽高比 |
setMaxHeight |
设置 ImageView 最大高度 |
setMaxWidth |
设置 ImageView 最大宽度 |
setBackground |
设置背景图片 |
setBackgroundColor |
设置背景颜色 |
setBackgroundResource |
设置背景资源 |
setBackgroundTintList |
设置背景着色颜色 |
setBackgroundTintMode |
设置背景着色模式 |
setForeground |
设置前景图片 |
setForegroundGravity |
设置前景重心 |
setForegroundTintList |
设置前景着色颜色 |
setForegroundTintMode |
设置前景着色模式 |
setImageBitmap |
设置 ImageView Bitmap |
setImageDrawable |
设置 ImageView Drawable |
setImageResource |
设置 ImageView 资源 |
setImageMatrix |
设置 ImageView Matrix |
setImageTintList |
设置 ImageView 着色颜色 |
setImageTintMode |
设置 ImageView 着色模式 |
setScaleType |
设置 ImageView 缩放类型 |
setColorFilter |
ImageView 着色处理 |
setBackgroundResources |
设置 View 图片资源 |
setImageResources |
设置 View 图片资源 |
setImageBitmaps |
设置 View Bitmap |
setImageDrawables |
设置 View Drawable |
setScaleTypes |
设置 View 缩放模式 |
setWidthHeight |
设置 View 宽度、高度 |
setWidth |
设置 View 宽度 |
setHeight |
设置 View 高度 |
setMinimumHeight |
设置 View 最小高度 |
setMinimumWidth |
设置 View 最小宽度 |
setAlpha |
设置 View 透明度 |
setTag |
设置 View Tag |
scrollTo |
View 内容滚动位置 - 相对于初始位置移动 |
scrollBy |
View 内部滚动位置 - 相对于上次移动的最后位置移动 |
setDescendantFocusability |
设置 ViewGroup 和其子控件两者之间的关系 |
setOverScrollMode |
设置 View 滚动模式 |
setHorizontalScrollBarEnabled |
设置是否绘制横向滚动条 |
setVerticalScrollBarEnabled |
设置是否绘制垂直滚动条 |
setScrollContainer |
设置 View 滚动效应 |
setNextFocusForwardId |
设置下一个获取焦点的 View id |
setNextFocusDownId |
设置向下移动焦点时, 下一个获取焦点的 View id |
setNextFocusLeftId |
设置向左移动焦点时, 下一个获取焦点的 View id |
setNextFocusRightId |
设置向右移动焦点时, 下一个获取焦点的 View id |
setNextFocusUpId |
设置向上移动焦点时, 下一个获取焦点的 View id |
setRotation |
设置 View 旋转度数 |
setRotationX |
设置 View 水平旋转度数 |
setRotationY |
设置 View 竖直旋转度数 |
setScaleX |
设置 View 水平方向缩放比例 |
setScaleY |
设置 View 竖直方向缩放比例 |
setTextAlignment |
设置文本的显示方式 |
setTextDirection |
设置文本的显示方向 |
setPivotX |
设置水平方向偏转量 |
setPivotY |
设置竖直方向偏转量 |
setTranslationX |
设置水平方向的移动距离 |
setTranslationY |
设置竖直方向的移动距离 |
setLayerType |
设置 View 硬件加速类型 |
requestLayout |
请求重新对 View 布局 |
requestFocus |
View 请求获取焦点 |
clearFocus |
View 清除焦点 |
requestLayoutParent |
View 请求更新 |
setLayoutParams |
设置 View LayoutParams |
setFocusableInTouchMode |
设置 View 是否在触摸模式下获得焦点 |
setFocusable |
设置 View 是否可以获取焦点 |
setSelected |
设置 View 是否选中 |
setEnabled |
设置 View 是否启用 |
setClickable |
设置 View 是否可以点击 |
setLongClickable |
设置 View 是否可以长按 |
setVisibility |
设置 View 显示的状态 |
setVisibilitys |
设置 View 显示的状态 |
toggleVisibilitys |
切换 View 显示的状态 |
reverseVisibilitys |
反转 View 显示的状态 |
removeSelfFromParent |
把自身从父 View 中移除 |
setLayoutGravity |
设置 View Layout Gravity |
setMarginLeft |
设置 View Left Margin |
setMarginTop |
设置 View Top Margin |
setMarginRight |
设置 View Right Margin |
setMarginBottom |
设置 View Bottom Margin |
setMargin |
设置 Margin 边距 |
setPaddingLeft |
设置 View Left Padding |
setPaddingTop |
设置 View Top Padding |
setPaddingRight |
设置 View Right Padding |
setPaddingBottom |
设置 View Bottom Padding |
setPadding |
设置 Padding 边距 |
setCompoundDrawablesByLeft |
设置 Left CompoundDrawables |
setCompoundDrawablesByTop |
设置 Top CompoundDrawables |
setCompoundDrawablesByRight |
设置 Right CompoundDrawables |
setCompoundDrawablesByBottom |
设置 Bottom CompoundDrawables |
setCompoundDrawables |
设置 CompoundDrawables |
setCompoundDrawablesWithIntrinsicBoundsByLeft |
设置 Left CompoundDrawables - 按照原有比例大小显示图片 |
setCompoundDrawablesWithIntrinsicBoundsByTop |
设置 Top CompoundDrawables - 按照原有比例大小显示图片 |
setCompoundDrawablesWithIntrinsicBoundsByRight |
设置 Right CompoundDrawables - 按照原有比例大小显示图片 |
setCompoundDrawablesWithIntrinsicBoundsByBottom |
设置 Bottom CompoundDrawables - 按照原有比例大小显示图片 |
setCompoundDrawablesWithIntrinsicBounds |
设置 CompoundDrawables - 按照原有比例大小显示图片 |
addRule |
设置 RelativeLayout View 布局规则 |
removeRule |
移除 RelativeLayout View 布局规则 |
addRules |
设置多个 RelativeLayout View 布局规则 |
removeRules |
移除多个 RelativeLayout View 布局规则 |
setAnimation |
设置动画 |
clearAnimation |
清空动画 |
startAnimation |
启动动画 |
setOnClicks |
设置点击事件 |
setOnLongClicks |
设置长按事件 |
addTouchArea |
增加控件的触摸范围, 最大范围只能是父布局所包含的的区域 |
smoothScrollToPosition |
滑动到指定索引 ( 有滚动过程 ) |
scrollToPosition |
滑动到指定索引 ( 无滚动过程 ) |
smoothScrollToTop |
滑动到顶部 ( 有滚动过程 ) |
scrollToTop |
滑动到顶部 ( 无滚动过程 ) |
smoothScrollToBottom |
滑动到底部 ( 有滚动过程 ) |
scrollToBottom |
滑动到底部 ( 无滚动过程 ) |
smoothScrollTo |
滚动到指定位置 ( 有滚动过程 ) - 相对于初始位置移动 |
smoothScrollBy |
滚动到指定位置 ( 有滚动过程 ) - 相对于上次移动的最后位置移动 |
fullScroll |
滚动方向 ( 有滚动过程 ) |
package dev.utils.app.helper;
import android.content.res.ColorStateList;
import android.graphics.Bitmap;
import android.graphics.ColorFilter;
import android.graphics.Matrix;
import android.graphics.Paint;
import android.graphics.PorterDuff;
import android.graphics.Typeface;
import android.graphics.drawable.Drawable;
import android.os.Build;
import android.support.annotation.ColorInt;
import android.support.annotation.DrawableRes;
import android.support.annotation.FloatRange;
import android.support.annotation.IdRes;
import android.text.TextUtils;
import android.text.TextWatcher;
import android.text.method.KeyListener;
import android.text.method.TransformationMethod;
import android.view.View;
import android.view.ViewGroup;
import android.view.animation.Animation;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;
import dev.utils.app.ClickUtils;
import dev.utils.app.EditTextUtils;
import dev.utils.app.HandlerUtils;
import dev.utils.app.ImageViewUtils;
import dev.utils.app.ListViewUtils;
import dev.utils.app.ListenerUtils;
import dev.utils.app.TextViewUtils;
import dev.utils.app.ViewUtils;
public final class ViewHelper {
private static final ViewHelper HELPER = new ViewHelper();
public static ViewHelper get() {
return HELPER;
}
public ViewHelper viewHelper() {
return this;
}
public DevHelper devHelper() {
return DevHelper.get();
}
public ViewHelper postRunnable(final Runnable runnable) {
HandlerUtils.postRunnable(runnable);
return this;
}
public ViewHelper postRunnable(final Runnable runnable, final long delayMillis) {
HandlerUtils.postRunnable(runnable, delayMillis);
return this;
}
public ViewHelper postRunnable(final Runnable runnable, final long delayMillis, final int number, final int interval) {
HandlerUtils.postRunnable(runnable, delayMillis, number, interval);
return this;
}
public ViewHelper postRunnable(final Runnable runnable, final long delayMillis, final int number, final int interval, final HandlerUtils.OnEndListener onEndListener) {
HandlerUtils.postRunnable(runnable, delayMillis, number, interval, onEndListener);
return this;
}
public ViewHelper removeRunnable(final Runnable runnable) {
HandlerUtils.removeRunnable(runnable);
return this;
}
public ViewHelper setHint(final View view, final String text) {
TextViewUtils.setHint(view, text);
return this;
}
public ViewHelper setText(final View view, final String text) {
if (view instanceof EditText) {
EditTextUtils.setText(EditTextUtils.getEditText(view), text);
} else {
TextViewUtils.setText(view, text);
}
return this;
}
public ViewHelper setTexts(final String text, final View... views) {
TextViewUtils.setTexts(text, views);
return this;
}
public ViewHelper setHtmlText(final View view, final String content) {
TextViewUtils.setHtmlText(view, content);
return this;
}
public ViewHelper setHtmlTexts(final String content, final View... views) {
TextViewUtils.setHtmlTexts(content, views);
return this;
}
public ViewHelper setHintTextColor(final View view, @ColorInt final int color) {
TextViewUtils.setHintTextColor(view, color);
return this;
}
public ViewHelper setHintTextColor(final View view, final ColorStateList colors) {
TextViewUtils.setHintTextColor(view, colors);
return this;
}
public ViewHelper setHintTextColors(@ColorInt final int color, final View... views) {
TextViewUtils.setHintTextColors(color, views);
return this;
}
public ViewHelper setHintTextColors(final ColorStateList colors, final View... views) {
TextViewUtils.setHintTextColors(colors, views);
return this;
}
public ViewHelper setTextColor(final View view, @ColorInt final int color) {
TextViewUtils.setTextColor(view, color);
return this;
}
public ViewHelper setTextColor(final View view, final ColorStateList colors) {
TextViewUtils.setTextColor(view, colors);
return this;
}
public ViewHelper setTextColors(@ColorInt final int color, final View... views) {
TextViewUtils.setTextColors(color, views);
return this;
}
public ViewHelper setTextColors(final ColorStateList colors, final View... views) {
TextViewUtils.setTextColors(colors, views);
return this;
}
public ViewHelper setTypeface(final View view, final Typeface typeface) {
TextViewUtils.setTypeface(view, typeface);
return this;
}
public ViewHelper setTextSizeByPx(final View view, final float size) {
TextViewUtils.setTextSizeByPx(view, size);
return this;
}
public ViewHelper setTextSizeBySp(final View view, final float size) {
TextViewUtils.setTextSizeBySp(view, size);
return this;
}
public ViewHelper setTextSizeByDp(final View view, final float size) {
TextViewUtils.setTextSizeByDp(view, size);
return this;
}
public ViewHelper setTextSizeByIn(final View view, final float size) {
TextViewUtils.setTextSizeByIn(view, size);
return this;
}
public ViewHelper setTextSize(final View view, final int unit, final float size) {
TextViewUtils.setTextSize(view, unit, size);
return this;
}
public ViewHelper setTextSizes(final View[] views, final int unit, final float size) {
TextViewUtils.setTextSizes(views, unit, size);
return this;
}
public ViewHelper clearFlags(final View view) {
TextViewUtils.clearFlags(view);
return this;
}
public ViewHelper setBold(final View view, final boolean isBold) {
TextViewUtils.setBold(view, isBold);
return this;
}
public ViewHelper setBold(final View view, final Typeface typeface, final boolean isBold) {
TextViewUtils.setBold(view, typeface, isBold);
return this;
}
public ViewHelper setUnderlineText(final View view) {
TextViewUtils.setUnderlineText(view);
return this;
}
public ViewHelper setUnderlineText(final View view,