SkillAgentSearch skills...

MyAndroidFrameWork

安卓常用组件&框架, 不用每次都搭架子

Install / Use

/learn @actor20170211030627/MyAndroidFrameWork
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

MyAndroidFrameWork

<a href="https://github.com/actor20170211030627/MyAndroidFrameWork" target="_blank">Github</a>, <a href="https://gitee.com/actor20170211030627/MyAndroidFrameWork" target="_blank">Gitee码云</a>

注意: 这是 <font color='red' size='6'><b>Androidx</b></font> 版, 非Androidx版本在  <a style="font-size:23px" href="./README-1.4.1.md"><s>这儿 </s></a>  (非Androidx版本不再维护) <br/>

Androidx版本能很好向下兼容, 包括jar包依赖也能自动转换, 所以建议转换成Androidx.

安卓常用组件&框架(懒得每次都搭架子...)

1.集成框架包括如下列表, 具体见 <a href="library/build.gradle" target="_blank">build.gradle</a>:

<pre> <ol><li>api "com.google.android.material:material:1.5.0"</li> <li>api "androidx.appcompat:appcompat:1.4.1"</li> <li>api "androidx.swiperefreshlayout:swiperefreshlayout:1.1.0"</li> <li>api "androidx.constraintlayout:constraintlayout:2.1.4"</li> <li>//https://github.com/google/gson //不混淆解析类, 示例: -keep class com.package.xxx.info.** { *; } api 'com.google.code.gson:gson:2.10.1' </li> <li>//https://github.com/bumptech/glide api 'com.github.bumptech.glide:glide:4.12.0' </li> <li>//https://github.com/Blankj/AndroidUtilCode 许多工具 api 'com.blankj:utilcodex:1.31.1' </li> <li>// 腾讯 MMKV:https://github.com/Tencent/MMKV (EasyHttp缓存需要) api 'com.tencent:mmkv-static:1.3.2' </li> <li>//https://github.com/square/okhttp api "com.squareup.okhttp3:okhttp:4.9.3" </li> <li>//https://github.com/getActivity/EasyHttp 轮子哥网络请求框架 api 'com.github.getActivity:EasyHttp:13.0' </li> <li>https://github.com/getActivity/ShapeView 轮子哥Shape 框架 api 'com.github.getActivity:ShapeView:9.6' </li> <li>//https://github.com/getActivity/XXPermissions 轮子哥权限 api 'com.github.getActivity:XXPermissions:21.3' </li> <li>//https://github.com/getActivity/Toaster 轮子哥吐司 api 'com.github.getActivity:Toaster:12.8' </li> <li>//https://github.com/CymChad/BaseRecyclerViewAdapterHelper api 'com.github.CymChad:BaseRecyclerViewAdapterHelper:3.0.7' </li> <li>//https://github.com/li-xiaojun/XPopup 各种Dialog & Popup (compileSdkVersion 29) api 'com.github.li-xiaojun:XPopup:2.10.0' </li></ol> </pre>

2.一些控件和工具类等

2.1.RecyclerView的Adapter

<pre> <a href="library/src/main/java/com/actor/myandroidframework/adapter_recyclerview/WheelViewAdapter.java" target="_blank">WheelViewAdapter</a> (WheelView滚动效果的Adapter) </pre>

2.2.ViewPager的Adapter

<pre> <a href="library/src/main/java/com/actor/myandroidframework/adapter_viewpager/BaseFragmentPagerAdapter.java" target="_blank">BaseFragmentPagerAdapter</a> (管理Fragment) <a href="library/src/main/java/com/actor/myandroidframework/adapter_viewpager/BaseFragmentStatePagerAdapter.java" target="_blank">BaseFragmentStatePagerAdapter</a> (管理Fragment) <a href="library/src/main/java/com/actor/myandroidframework/adapter_viewpager/BasePagerAdapter.java" target="_blank">BasePagerAdapter</a> </pre>

2.3.Dialog(继承对应Dialog并自定义界面, 不用再关注style等. )

<pre> <a href="library/src/main/java/com/actor/myandroidframework/dialog/BaseAlertDialog.java" target="_blank">BaseAlertDialog</a> (AlertDialog简单说明) <a href="library/src/main/java/com/actor/myandroidframework/dialog/BaseBottomSheetDialog.java" target="_blank">BaseBottomSheetDialog</a> (从底部弹出并停留底部, 可二次滑动) <a href="library/src/main/java/com/actor/myandroidframework/dialog/BaseDialog.java" target="_blank">BaseDialog</a> (Dialog简单封装) <a href="library/src/main/java/com/actor/myandroidframework/dialog/LoadingDialog.java" target="_blank">LoadingDialog</a> (加载Dialog, 耗时操作时可显示这个Dialog) <a href="library/src/main/java/com/actor/myandroidframework/dialog/ViewBindingDialog.java" target="_blank">ViewBindingDialog</a> (可以使用viewBinding) <a href="library/src/main/java/com/actor/myandroidframework/fragment/BaseDialogFragment.java" target="_blank">BaseDialogFragment</a> (dialog样式的Fragment) <a href="library/src/main/java/com/actor/myandroidframework/popupwindow/BasePopupWindow.java" target="_blank">BasePopupWindow</a> (PopupWindow简单整理, 可一用) </pre>

2.4.Utils工具类

<pre> <a href="library/src/main/java/com/actor/myandroidframework/utils/audio/MediaPlayerUtils.java" target="_blank">MediaPlayerUtils</a> (播放音频) <a href="library/src/main/java/com/actor/myandroidframework/utils/audio/MediaRecorderUtils.java" target="_blank">MediaRecorderUtils</a> (录音) <a href="library/src/main/java/com/actor/myandroidframework/utils/easyhttp/EasyHttpConfigUtils.java" target="_blank">EasyHttpConfigUtils</a> (EasyHttp基本配置 & 封装的WebSocket) <a href="library/src/main/java/com/actor/myandroidframework/utils/glide/GlideUtils.java" target="_blank">GlideUtils</a> (Glide加载图片常用方法) <a href="library/src/main/java/com/actor/myandroidframework/utils/gson/IntJsonDeserializer.java" target="_blank">IntJsonDeserializer</a> (解决Gson""转换成int报错) <a href="library/src/main/java/com/actor/myandroidframework/utils/okhttputils/OkHttpConfigUtils.java" target="_blank">OkHttpConfigUtils</a> (OkHttp基本配置) <a href="library/src/main/java/com/actor/myandroidframework/utils/sharedelement/SharedElementUtils.java" target="_blank">SharedElementUtils</a> (元素共享跳转页面) <a href="library/src/main/java/com/actor/myandroidframework/utils/video/VideoProcessorUtils.java" target="_blank">VideoProcessorUtils</a> (视频压缩) <a href="library/src/main/java/com/actor/myandroidframework/utils/AssetsUtils.java" target="_blank">AssetsUtils</a> (Assets读取) <a href="library/src/main/java/com/actor/myandroidframework/utils/Base64Utils.java" target="_blank">Base64Utils</a> (Base64编解码) <a href="library/src/main/java/com/actor/myandroidframework/utils/BaseCountDownTimer.java" target="_blank">BaseCountDownTimer</a> (倒计时, 可暂停, 继续, 获取计时时间) <a href="library/src/main/java/com/actor/myandroidframework/utils/BRVUtils.java" target="_blank">BRVUtils</a> (BaseRecyclerView框架辅助) <a href="library/src/main/java/com/actor/myandroidframework/utils/ClickUtils2.java" target="_blank">ClickUtils2</a> (防止2次点击) <a href="library/src/main/java/com/actor/myandroidframework/utils/FontUtils.java" target="_blank">FontUtils</a> (字体) <a href="library/src/main/java/com/actor/myandroidframework/utils/LogUtils.java" target="_blank">LogUtils</a> (Log简单打印) <a href="library/src/main/java/com/actor/myandroidframework/utils/MMKVUtils.java" target="_blank">MMKVUtils</a> (数据缓存) <a href="library/src/main/java/com/actor/myandroidframework/utils/NotificationUtils2.java" target="_blank">NotificationUtils2</a> (通知栏) <a href="library/src/main/java/com/actor/myandroidframework/utils/SPUtils.java" target="_blank"><s>SPUtils</s></a> (<s>SP工具</s>, 建议使用<code>MMKVUtils</code>) <a href="library/src/main/java/com/actor/myandroidframework/utils/TextUtils2.java" target="_blank">TextUtils2</a> (获取Text, 判空, getStringFormat, ...) <a href="library/src/main/java/com/actor/myandroidframework/utils/ThreadUtils.java" target="_blank">ThreadUtils</a> (线程判断/切换) <a href="library/src/main/java/com/actor/myandroidframework/utils/ToasterUtils.java" target="_blank">ToasterUtils</a> (吐司工具类-轮子哥) </pre>

2.5.Widget小控件

<pre> <a href="library/src/main/java/com/actor/myandroidframework/widget/viewpager/ScrollableViewPager.java" target="_blank">ScrollableViewPager</a> (ViewPager是否能左右滑动) <a href="library/src/main/java/com/actor/myandroidframework/widget/webview/BaseWebView.java" target="_blank">BaseWebView</a> (WebView简单封装) <a href="library/src/main/java/com/actor/myandroidframework/widget/AnimationDrawableImageView.java" target="_blank">AnimationDrawableImageView</a> (播放/停止动画的ImageView) <a href="library/src/main/java/com/actor/myandroidframework/widget/BaseItemDecoration.java" target="_blank">BaseItemDecoration</a> (RecyclerView的Item间隔) <a href="library/src/main/java/com/actor/myandroidframework/widget/BaseRadioGroup.java" target="_blank">BaseRadioGroup</a> (RadioGroup简单封装) <a href="library/src/main/java/com/actor/myandroidframework/widget/BaseRatingBar.java" target="_blank">BaseRatingBar</a> (RatingBar星星选择) <a href="library/src/main/java/com/actor/myandroidframework/widget/BaseSlidingDrawer.java" target="_blank">BaseSlidingDrawer</a> (抽屉, 从底部或左侧拉出/收回) <a href="library/src/main/java/com/actor/myandroidframework/widget/BaseSpinner.java" target="_blank">BaseSpinner</a> (Spinner增加一些属性) <a href="library/src/main/java/com/actor/myandroidframework/widget/BaseTabLayout.java" target="_blank">BaseTabLayout</a> (更简单使用TabLayout) <a href="library/src/main/java/com/actor/myandroidframework/widget/BaseTextSwitcher.java" target="_blank">BaseTextSwitcher</a> (TextView切换) <a href="library/src/main/java/com/actor/myandroidframework/widget/BaseViewSwitcher.java" target="_blank">BaseViewSwitcher</a> (View切换) <a href="library/src/main/java/com/actor/myandroidframework/widget/DrawableTextView.java" target="_blank">DrawableTextView</a> (限定Drawable宽高, 播放/停止动画 的TextView) <a href="library/src/main/java/com/actor/myandroidframework/widget/LineView.java" target="_blank">LineView</a> (实线, 虚线, 渐变, 角度) <a href="library/src/main/java/com/actor/myandroidframework/widget/MarqueeTextView.java" target="_blank">MarqueeTextView</a> (跑马灯) <a href="library/src/main/java/com/actor/myandroidframework/widget/RatioLayout.java" target="_blank">RatioLayout</a> (百分比布局, 宽高百分比) <a href="library/src/main/java/com/actor/myandroidframework/widget/RoundCardView.java" target="_blank">RoundCardView</a> (圆角CardView) <a href="library/src/main/java/com/actor/myandroidframework/widget/StateListImageView.java" target="_blank">StateListImageView</a> (设置各种状态时的图片) <a href="library/src/main/java/com/actor/myandroidframework/widget/StatusBarHeightView.java" target="_blank">StatusBarHeightView</a> (状态栏占高) <a href="library/src/main/java/com/actor/myandroidframework/widget/SwipeRefreshLayoutCompatViewPager.java" target="_blank">SwipeRefreshLayoutCompatViewPager</a> (SwipeRefreshLayout适配ViewPager里的下拉) <a href="library/src/main/java/com/actor/myandroidframework/widget/VerticalScrollableTextView.java" target="_blank">VerticalScrollableTextView</a> (可垂直滑动的TextView) </pre>

3.Screenshot

<img src="captures/BaseTextSwitcher_And_BaseViewSwitcher.gif" width=33%></img> <img src="captures/BaseBottomSheetDialogFragment.gif" width=33%></img> <img src="captures/BaseRatingBar.gif" width=33%></img> <img s

Related Skills

View on GitHub
GitHub Stars23
CategoryDevelopment
Updated1mo ago
Forks6

Languages

Java

Security Score

85/100

Audited on Mar 5, 2026

No findings