From 63e7aa59d22ada28fd14d39900f41a2e1ed2c325 Mon Sep 17 00:00:00 2001 From: Administrator <123> Date: Mon, 15 Nov 2021 07:40:19 +0000 Subject: [PATCH] 启动页 及部分资源、依赖和框架文件 --- app/src/main/res/mipmap-xhdpi/top_right_g.png | 0 app/src/main/res/mipmap-xxhdpi/arrow_bottom_black.png | 0 app/src/main/res/menu/bottom_nav_menu.xml | 24 app/src/main/res/mipmap-hdpi/arrow_top_black.png | 0 app/src/main/res/mipmap-hdpi/ic_add_black_48dp.png | 0 app/src/main/res/mipmap-xxhdpi/bg_xiaomai.jpg | 0 app/src/main/res/drawable/theme_corner_border.xml | 32 app/src/main/res/drawable/bg_enable_circle_border.xml | 15 app/src/main/res/drawable/picture_icon_delete.png | 0 app/src/main/res/mipmap-xhdpi/icon_more_vert_white.png | 0 app/src/main/res/drawable/white_corner_border.xml | 31 app/src/main/res/mipmap-xxhdpi/selected.png | 0 app/src/main/res/mipmap-xhdpi/arrow_top_black.png | 0 app/src/main/java/com/runt/open/mvvm/ui/main/home/HomeFragment.java | 44 + app/src/main/res/mipmap-xxhdpi/top_left_g.png | 0 app/src/main/java/com/runt/open/mvvm/util/Configuration.java | 48 + app/src/main/res/drawable-v21/btn_circle_blue.xml | 31 app/src/main/res/mipmap-xhdpi/coin_d.png | 0 app/src/main/res/mipmap-hdpi/ic_arrow_back_black_24dp.png | 0 app/src/main/java/com/runt/open/mvvm/ui/main/notifications/NotificationsViewModel.java | 19 app/src/main/res/mipmap-xxxhdpi/female.png | 0 app/src/main/java/com/runt/open/mvvm/ui/main/notifications/NotificationsFragment.java | 44 + app/src/main/res/mipmap-hdpi/icon_more_vert_white.png | 0 app/src/main/res/mipmap-mdpi/ic_arrow_back_white_24dp.png | 0 app/src/main/java/com/runt/open/mvvm/util/SpUtils.java | 4 app/src/main/res/mipmap-xhdpi/data_null.png | 0 app/src/main/res/mipmap-xxhdpi/female.png | 0 app/src/main/res/layout/fragment_notifications.xml | 2 app/src/main/res/drawable/bg_red_border_circle.xml | 14 app/src/main/res/mipmap-xxhdpi/bg_yumi.jpg | 0 app/src/main/res/mipmap-xxhdpi/bg_uav.jpg | 0 app/src/main/res/mipmap-xxhdpi/location_dark.png | 0 app/src/main/res/mipmap-xxxhdpi/selected.png | 0 app/src/main/res/drawable-v21/bg_white_circle.xml | 30 app/src/main/res/mipmap-xxhdpi/icon_white_mine.png | 0 app/src/main/res/drawable/bg_gradient_blue.xml | 12 app/src/main/res/drawable/bg_red_circle.xml | 11 app/src/main/res/values/themes.xml | 2 app/src/main/java/com/runt/open/mvvm/ui/login/LoggedInUser.java | 10 app/src/main/res/mipmap-xhdpi/icon_delete.png | 0 app/src/main/res/values/colors.xml | 108 ++ app/src/main/res/mipmap-xxxhdpi/icon_more_hor_white.png | 0 app/src/main/res/mipmap-hdpi/icon_more_hor_white.png | 0 app/src/main/res/mipmap-xhdpi/arrow_bottom_black.png | 0 app/src/main/java/com/runt/open/mvvm/util/AlgorithmUtils.java | 75 + app/src/main/res/navigation/mobile_navigation.xml | 6 app/src/main/res/mipmap-hdpi/icon_delete.png | 0 app/src/main/res/mipmap-xhdpi/icon_coin.png | 0 app/src/main/res/drawable/bg_white.xml | 21 app/src/main/res/mipmap-xhdpi/selected.png | 0 app/libs/alipaySdk-15.7.5.aar | 0 app/src/main/res/drawable/bg_enable_circle.xml | 11 app/src/main/res/mipmap-xhdpi/top_left_g.png | 0 app/src/main/res/drawable-v21/btn_circle_red.xml | 25 app/src/main/res/mipmap-xxhdpi/ic_stay_primary_landscape_black_48dp.png | 0 app/src/main/res/drawable/enable_corner_border.xml | 33 app/src/main/res/mipmap-hdpi/data_null.png | 0 app/src/main/res/mipmap-xhdpi/icon_more_hor_white.png | 0 app/src/main/res/drawable/picture_icon_video.png | 0 app/src/main/res/drawable-v21/btn_blue_border.xml | 37 app/src/main/res/mipmap-mdpi/icon_white_mine.png | 0 app/src/main/res/drawable/bg_blue_circle.xml | 11 app/src/main/java/com/runt/open/mvvm/ui/main/dashboard/DashboardViewModel.java | 19 app/src/main/res/drawable-v21/theme_corner_border.xml | 38 app/src/main/res/mipmap-xxhdpi/icon_coin.png | 0 app/src/main/res/mipmap-hdpi/icon_seekbar_thumb.png | 0 app/src/main/res/mipmap-mdpi/ic_add_black_48dp.png | 0 app/build.gradle | 21 app/src/main/res/mipmap-xhdpi/weipay.png | 0 app/src/main/res/mipmap-xxxhdpi/arrow_bottom_white.png | 0 app/src/main/res/values/dimens.xml | 45 + app/src/main/res/drawable/bg_white_corner.xml | 11 app/src/main/res/mipmap-mdpi/icon_more_vert_black.png | 0 app/src/main/res/layout/activity_splash.xml | 21 app/src/main/java/com/runt/open/mvvm/ui/login/LoginDataSource.java | 7 app/src/main/res/mipmap-xxxhdpi/select.png | 0 app/src/main/res/mipmap-xxhdpi/ic_stay_primary_portrait_black_48dp.png | 0 app/src/main/res/mipmap-xxhdpi/birth.png | 0 app/src/main/res/mipmap-xhdpi/ic_stay_primary_landscape_black_48dp.png | 0 app/src/main/res/mipmap-xxxhdpi/arrow_top_black.png | 0 app/src/main/res/mipmap-xxxhdpi/top_left_g.png | 0 app/src/main/res/mipmap-xhdpi/select.png | 0 app/src/main/res/mipmap-xxhdpi/icon_more_vert_white.png | 0 app/src/main/res/mipmap-mdpi/arrow_top_black.png | 0 app/src/main/res/mipmap-xxxhdpi/icon_white_setting.png | 0 app/src/main/java/com/runt/open/mvvm/ui/login/UserBean.java | 278 ++++++ app/src/main/res/mipmap-xxxhdpi/arrow_right.png | 0 app/src/main/res/drawable/picture_icon_shadow_bg.png | 0 app/src/main/res/mipmap-xxxhdpi/alipay.png | 0 app/src/main/res/drawable-v21/btn_gray_circle.xml | 24 app/src/main/res/drawable/bg_theme_border.xml | 14 settings.gradle | 2 app/src/main/res/mipmap-xxhdpi/alipay.png | 0 app/src/main/res/mipmap-xxxhdpi/ic_stay_primary_portrait_black_48dp.png | 0 app/src/main/res/mipmap-xxxhdpi/welcom.png | 0 app/src/main/res/mipmap-xxxhdpi/ic_stay_primary_landscape_black_48dp.png | 0 app/src/main/java/com/runt/open/mvvm/listener/CustomClickListener.java | 37 app/src/main/AndroidManifest.xml | 38 app/src/main/res/mipmap-xhdpi/location_e.png | 0 app/src/main/res/mipmap-xxhdpi/app_icon.png | 0 app/src/main/res/mipmap-xxxhdpi/weipay.png | 0 app/src/main/res/mipmap-xhdpi/ic_arrow_back_white_24dp.png | 0 app/src/main/res/mipmap-xxhdpi/arrow_right.png | 0 app/src/main/java/com/runt/open/mvvm/ui/main/home/HomeViewModel.java | 19 app/src/main/res/color/home_nav_color.xml | 5 app/src/main/res/mipmap-xxxhdpi/icon_white_back.png | 0 app/src/main/res/mipmap-xxxhdpi/icon_more_vert_white.png | 0 app/src/main/res/mipmap-mdpi/arrow_bottom_black.png | 0 app/src/main/res/mipmap-xxhdpi/weipay.png | 0 app/src/main/res/mipmap-xxhdpi/location_e.png | 0 app/src/main/res/mipmap-xxhdpi/icon_white_setting.png | 0 app/src/main/res/mipmap-mdpi/icon_more_hor_white.png | 0 app/src/main/res/mipmap-xxxhdpi/icon_home.png | 0 app/src/main/res/drawable/check_selector.xml | 9 app/src/main/res/mipmap-mdpi/ic_arrow_back_black_24dp.png | 0 app/src/main/res/mipmap-xxxhdpi/arrow_top_white.png | 0 app/src/main/res/mipmap-hdpi/ic_arrow_back_white_24dp.png | 0 app/src/main/java/com/runt/open/mvvm/ui/login/LoginViewModel.java | 30 app/src/main/res/drawable-v21/btn_blue_corner.xml | 31 app/src/main/res/mipmap-xxxhdpi/default_head.png | 0 app/src/main/res/mipmap-xxhdpi/icon_more_hor_black.png | 0 app/src/main/java/com/runt/open/mvvm/ui/splash/SplashViewModel.java | 87 ++ app/src/main/res/mipmap-xxhdpi/arrow_top_black.png | 0 app/src/main/res/mipmap-xxxhdpi/birth.png | 0 app/src/main/res/mipmap-xhdpi/icon_more_vert_black.png | 0 app/src/main/res/mipmap-xhdpi/top_right_e.png | 0 app/src/main/res/mipmap-xxhdpi/icon_white_back.png | 0 app/src/main/res/mipmap-hdpi/icon_white_mine.png | 0 app/src/main/res/mipmap-xhdpi/sign.png | 0 app/src/main/res/mipmap-xxhdpi/icon_more_vert_black.png | 0 app/src/main/res/mipmap-xxxhdpi/icon_white_mine.png | 0 app/src/main/res/mipmap-hdpi/bg_seekbar_display1.png | 0 app/src/main/res/mipmap-xxhdpi/select.png | 0 app/src/main/res/mipmap-xxxhdpi/top_right_e.png | 0 app/proguard-rules.pro | 6 app/src/main/res/mipmap-hdpi/icon_more_hor_black.png | 0 app/src/main/res/drawable-v21/bg_circle_default.xml | 24 app/src/main/res/drawable-v21/btn_gray_border.xml | 37 app/src/main/res/values/styles.xml | 51 + app/src/main/res/mipmap-xxxhdpi/icon_mine.png | 0 app/src/main/res/mipmap-xxxhdpi/male.png | 0 app/src/main/res/mipmap-hdpi/ic_stay_primary_landscape_black_48dp.png | 0 app/src/main/res/drawable-v21/btn_circle.xml | 34 app/src/main/res/mipmap-xhdpi/top_left_e.png | 0 app/src/main/res/drawable/bg_black_circle.xml | 11 app/src/main/res/mipmap-xhdpi/ic_add_black_48dp.png | 0 app/src/main/res/mipmap-xhdpi/alipay.png | 0 app/src/main/res/mipmap-xhdpi/arrow_top_white.png | 0 app/src/main/res/mipmap-hdpi/ic_stay_primary_portrait_black_48dp.png | 0 app/src/main/res/drawable/bg_them_circle.xml | 12 app/src/main/res/mipmap-xhdpi/coin.png | 0 app/src/main/res/mipmap-xxhdpi/arrow_bottom_white.png | 0 app/src/main/res/mipmap-xhdpi/icon_more_hor_black.png | 0 app/src/main/res/mipmap-xxhdpi/bg_bozhong.jpg | 0 app/src/main/res/mipmap-hdpi/arrow_bottom_black.png | 0 app/src/main/res/mipmap-xxxhdpi/icon_news.png | 0 app/src/main/res/mipmap-xhdpi/birth.png | 0 app/src/main/res/mipmap-xhdpi/ic_delete.png | 0 app/src/main/res/mipmap-xxhdpi/ic_arrow_back_white_24dp.png | 0 app/src/main/res/mipmap-xxxhdpi/icon_more_hor_black.png | 0 app/src/main/res/color/verify_code.xml | 5 app/src/main/res/layout/fragment_home.xml | 2 app/src/main/res/layout/item_btn_text_with_text.xml | 74 + app/src/main/res/mipmap-xhdpi/icon_white_setting.png | 0 app/src/main/res/mipmap-xxxhdpi/location_e.png | 0 app/src/main/res/drawable/bg_seekbar_progress_drawable.xml | 26 app/src/main/res/mipmap-xxxhdpi/icon_coin.png | 0 app/src/main/res/mipmap-xhdpi/arrow_right.png | 0 app/src/main/res/drawable-v21/btn_blue_circle_border.xml | 37 app/src/main/res/drawable/bg_white_corner_8.xml | 5 app/src/main/res/mipmap-xhdpi/arrow_bottom_white.png | 0 app/src/main/java/com/runt/open/mvvm/base/activities/BaseActivity.java | 33 app/src/main/res/mipmap-mdpi/arrow_top_white.png | 0 app/src/main/java/com/runt/open/mvvm/MyApplication.java | 36 app/src/main/res/drawable-v21/btn_white_rb_corner.xml | 35 app/src/main/res/drawable-v21/white_corner_border.xml | 38 app/src/main/res/mipmap-xxhdpi/ic_arrow_back_black_24dp.png | 0 app/src/main/res/drawable-v21/btn_white_lb_corner.xml | 36 app/src/main/res/mipmap-xhdpi/user_back.png | 0 app/src/main/res/mipmap-mdpi/ic_stay_primary_portrait_black_48dp.png | 0 app/src/main/res/mipmap-mdpi/icon_white_setting.png | 0 app/src/main/res/mipmap-xxhdpi/default_head.png | 0 app/src/main/res/drawable-v21/bg_white.xml | 27 app/src/main/res/mipmap-xxhdpi/top_right_e.png | 0 app/src/main/res/mipmap-hdpi/icon_white_setting.png | 0 app/src/main/res/mipmap-xxxhdpi/ic_add_black_48dp.png | 0 app/src/main/res/mipmap-xxhdpi/data_null.png | 0 app/src/main/res/mipmap-xhdpi/ic_stay_primary_portrait_black_48dp.png | 0 app/src/main/res/mipmap-xxxhdpi/data_null.png | 0 app/src/main/res/drawable/item_check_pass.xml | 7 app/src/main/res/mipmap-xxhdpi/sign.png | 0 app/src/main/java/com/runt/open/mvvm/ui/splash/SplashActivity.java | 93 ++ app/src/main/res/drawable-v21/enable_corner_border.xml | 38 app/src/main/res/mipmap-hdpi/icon_more_vert_black.png | 0 app/src/main/res/mipmap-hdpi/arrow_bottom_white.png | 0 app/src/main/res/mipmap-xxhdpi/arrow_top_white.png | 0 app/src/main/res/mipmap-xhdpi/ic_arrow_back_black_24dp.png | 0 app/src/main/res/mipmap-xhdpi/icon_white_mine.png | 0 app/src/main/java/com/runt/open/mvvm/retrofit/api/LoginApiCenter.java | 24 app/src/main/res/drawable/ic_launcher_background.xml | 134 +- app/src/main/res/mipmap-mdpi/icon_more_hor_black.png | 0 app/src/main/res/drawable/bg_num.xml | 25 app/src/main/res/mipmap-hdpi/bg_seekbar_display2.png | 0 app/src/main/res/mipmap-xxhdpi/ic_add_black_48dp.png | 0 app/src/main/res/mipmap-xxhdpi/male.png | 0 app/src/main/res/drawable/calender_next.xml | 7 app/src/main/res/mipmap-hdpi/arrow_top_white.png | 0 app/src/main/res/layout/fragment_dashboard.xml | 2 app/src/main/res/mipmap-xhdpi/default_head.png | 0 app/src/main/res/drawable/calender_last.xml | 7 app/src/main/res/mipmap-xxxhdpi/icon_more_vert_black.png | 0 app/src/main/res/mipmap-mdpi/arrow_bottom_white.png | 0 app/src/main/res/mipmap-xhdpi/icon_white_back.png | 0 app/src/main/java/com/runt/open/mvvm/ui/main/dashboard/DashboardFragment.java | 44 + app/src/main/res/drawable/bg_white_circle.xml | 11 app/src/main/res/mipmap-xhdpi/location_dark.png | 0 app/src/main/res/mipmap-mdpi/icon_more_vert_white.png | 0 /dev/null | 0 app/src/main/res/mipmap-xxxhdpi/arrow_bottom_black.png | 0 app/src/main/res/mipmap-xxxhdpi/location_dark.png | 0 app/src/main/res/mipmap-mdpi/data_null.png | 0 app/src/main/res/anim/anima_make_none.xml | 16 app/src/main/res/mipmap-mdpi/ic_stay_primary_landscape_black_48dp.png | 0 app/src/main/res/drawable/bg_gradient_gray.xml | 12 app/src/main/res/mipmap-xxhdpi/icon_more_hor_white.png | 0 225 files changed, 2,254 insertions(+), 131 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 1789858..3633f0b 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -38,10 +38,24 @@ buildFeatures { viewBinding true } + android.applicationVariants.all { variant -> + variant.outputs.all { + def viron + + if (buildType.name.equals('release')) { + viron = "正式版"; + }else if (buildType.name.equals('debug')) { + viron = "开发版"; + } + outputFileName = "MVVM开源项目-" + viron + "-v" + + defaultConfig.versionName +"-" + defaultConfig.versionCode +"-" + new Date().format("MMddHHmm", TimeZone.getTimeZone("UTC"))+ + ".apk" + } + } } dependencies { - + implementation fileTree(dir: 'libs', include: ['*.jar']) implementation 'androidx.appcompat:appcompat:1.2.0' implementation 'com.google.android.material:material:1.3.0' implementation 'androidx.constraintlayout:constraintlayout:2.0.4' @@ -63,4 +77,9 @@ implementation 'com.permissionx.guolindev:permissionx:1.2.2' //权限依赖让你推广你就发群里?没有别的群了? implementation 'com.github.bumptech.glide:glide:4.12.0' annotationProcessor 'com.github.bumptech.glide:compiler:4.12.0' + implementation 'com.pangle.cn:ads-sdk-pro:4.0.2.2'//字节跳动 穿山甲广告 + implementation 'com.tencent.bugly:crashreport:latest.release' //其中latest.release指代最新Bugly SDK版本号,也可以指定明确的版本号,例如2.1.9 + implementation 'com.tencent.bugly:nativecrashreport:latest.release' //其中latest.release指代最新Bugly NDK版本号,也可以指定明确的版本号,例如3.0 + implementation 'com.facebook.rebound:rebound:0.3.6'//Rebound “弹簧”动画效果的第三方工具包,由FaceBook + implementation 'com.github.zhaolei9527:BottomMenu:v1.0.1'//底部菜单弹框 } \ No newline at end of file diff --git a/app/libs/alipaySdk-15.7.5.aar b/app/libs/alipaySdk-15.7.5.aar new file mode 100644 index 0000000..d977ea2 --- /dev/null +++ b/app/libs/alipaySdk-15.7.5.aar Binary files differ diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index 481bb43..ea83ef0 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -18,4 +18,8 @@ # If you keep the line number information, uncomment this to # hide the original source file name. -#-renamesourcefileattribute SourceFile \ No newline at end of file +#-renamesourcefileattribute SourceFile +#穿山甲混淆代码 +-keep class com.bytedance.sdk.openadsdk.** { *; } +-keep public interface com.bytedance.sdk.openadsdk.downloadnew.** {*;} +-keep class com.pgl.sys.ces.* {*;} \ No newline at end of file diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 58dc725..1b81d3c 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -1,16 +1,38 @@ <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:tools="http://schemas.android.com/tools" package="com.runt.open.mvvm" > + <uses-permission android:name="android.permission.INTERNET" /> + <uses-permission android:name="android.permission.GET_TASKS" /> + <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> + <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> + <uses-permission android:name="android.permission.READ_PHONE_STATE" /> + <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> + <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> + <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" /> + <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> + <uses-permission android:name="android.permission.WAKE_LOCK" /> + <!--写入SD卡的权限:如果你希望保存相机拍照后的照片--> + <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> + <!--读取SD卡的权限:打开相册选取图片所必须的权限--> + <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> + <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" + tools:ignore="ProtectedPermissions" /> + <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> + <uses-permission android:name="android.permission.READ_LOGS" + tools:ignore="ProtectedPermissions" /> + <uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"/> <application android:allowBackup="true" - android:icon="@mipmap/ic_launcher" + android:icon="@mipmap/app_icon" + android:name=".MyApplication" android:label="@string/app_name" - android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" + android:networkSecurityConfig="@xml/network_security_config" android:theme="@style/Theme.OpemMvvm" > <activity - android:name=".MainActivity" + android:name=".ui.splash.SplashActivity" android:exported="true" android:label="@string/app_name" > <intent-filter> @@ -19,6 +41,16 @@ <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> + <activity android:name=".MainActivity" + android:launchMode="singleTask" + tools:ignore="WrongManifestParent" + android:exported="true"> + <intent-filter> + <action android:name="android.intent.action.VIEW" /> + <category android:name="android.intent.category.DEFAULT" /> + <action android:name="com.zfwl.merchant.activities.MainActivity" /> + </intent-filter> + </activity> </application> </manifest> \ No newline at end of file diff --git a/app/src/main/java/com/runt/open/mvvm/MyApplication.java b/app/src/main/java/com/runt/open/mvvm/MyApplication.java index 8ed880c..ab1a97f 100644 --- a/app/src/main/java/com/runt/open/mvvm/MyApplication.java +++ b/app/src/main/java/com/runt/open/mvvm/MyApplication.java @@ -8,6 +8,9 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; +import com.bytedance.sdk.openadsdk.TTAdConfig; +import com.bytedance.sdk.openadsdk.TTAdConstant; +import com.bytedance.sdk.openadsdk.TTAdSdk; import com.runt.open.mvvm.util.MyLog; import com.scwang.smart.refresh.footer.ClassicsFooter; import com.scwang.smart.refresh.header.ClassicsHeader; @@ -17,6 +20,7 @@ import com.scwang.smart.refresh.layout.api.RefreshLayout; import com.scwang.smart.refresh.layout.listener.DefaultRefreshFooterCreator; import com.scwang.smart.refresh.layout.listener.DefaultRefreshHeaderCreator; +import com.tencent.bugly.crashreport.CrashReport; import java.util.ArrayList; import java.util.List; @@ -42,6 +46,7 @@ @Override public void onCreate() { super.onCreate(); + MyLog.i(TAG,"onCreate"); application = this; //CrashReport.initCrashReport(getApplicationContext(), "8d88679ae9", false);//注册bugly //设置全局的Header构建器 @@ -109,6 +114,29 @@ } } }); + CrashReport.initCrashReport(getApplicationContext(), "8d88679ae9", false);//注册bugly + TTAdConfig.Builder builder = new TTAdConfig.Builder() + .appId("5106813") + .useTextureView(true) //使用TextureView控件播放视频,默认为SurfaceView,当有SurfaceView冲突的场景,可以使用TextureView + .appName(getString(R.string.app_name)) + .titleBarTheme(TTAdConstant.TITLE_BAR_THEME_DARK) + .allowShowNotify(true) //是否允许sdk展示通知栏提示 + .allowShowPageWhenScreenLock(true) //是否在锁屏场景支持展示广告落地页 + .directDownloadNetworkType(TTAdConstant.NETWORK_STATE_WIFI) //允许直接下载的网络状态集合 + .supportMultiProcess(true) //是否支持多进程,true支持 + .asyncInit(true) ;//异步初始化sdk,开启可减少初始化耗时 + //.httpStack(new MyOkStack3())//自定义网络库,demo中给出了okhttp3版本的样例,其余请自行开发或者咨询工作人员。 + TTAdSdk.init(this, builder.build(), new TTAdSdk.InitCallback() { + @Override + public void success() { + MyLog.i(TAG,"TTAdSdk success"); + } + + @Override + public void fail(int i, String s) { + MyLog.e(TAG,"TTAdSdk fail"); + } + }); } /** @@ -121,14 +149,6 @@ System.exit(0); } - public void clearActivities(){ - for(Activity activity:activities){ - /*if(activity instanceof LoginActivity){ - continue; - }*/ - activity.finish(); - } - } public boolean isInfront(){ return isInfront; diff --git a/app/src/main/java/com/runt/open/mvvm/base/activities/BaseActivity.java b/app/src/main/java/com/runt/open/mvvm/base/activities/BaseActivity.java index 355a46d..ffe24f5 100644 --- a/app/src/main/java/com/runt/open/mvvm/base/activities/BaseActivity.java +++ b/app/src/main/java/com/runt/open/mvvm/base/activities/BaseActivity.java @@ -2,17 +2,11 @@ import android.Manifest; import android.app.AlertDialog; -import android.app.ProgressDialog; import android.content.Context; -import android.content.DialogInterface; -import android.content.Intent; import android.content.pm.ActivityInfo; -import android.net.Uri; import android.os.Build; import android.os.Bundle; import android.os.Environment; -import android.provider.Settings; -import android.util.Log; import android.view.LayoutInflater; import android.view.MotionEvent; import android.view.View; @@ -25,7 +19,6 @@ import androidx.annotation.Nullable; import androidx.annotation.StringRes; import androidx.appcompat.app.AppCompatActivity; -import androidx.core.content.FileProvider; import androidx.lifecycle.ViewModelProvider; import androidx.viewbinding.ViewBinding; @@ -33,32 +26,12 @@ import com.runt.open.mvvm.R; import com.runt.open.mvvm.base.model.BaseViewModel; import com.runt.open.mvvm.base.model.ViewModelFactory; -import com.runt.open.mvvm.data.ApkUpGradeResult; -import com.runt.open.mvvm.util.MyLog; -import com.runt.open.mvvm.util.SpUtils; -import com.permissionx.guolindev.PermissionX; -import com.permissionx.guolindev.callback.ExplainReasonCallbackWithBeforeParam; -import com.permissionx.guolindev.callback.ForwardToSettingsCallback; -import com.permissionx.guolindev.callback.RequestCallback; -import com.permissionx.guolindev.request.ExplainScope; -import com.permissionx.guolindev.request.ForwardScope; import java.io.File; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.InputStream; import java.lang.reflect.Method; import java.lang.reflect.ParameterizedType; -import java.util.Date; -import java.util.List; import dmax.dialog.SpotsDialog; -import okhttp3.Call; -import okhttp3.Callback; -import okhttp3.OkHttpClient; -import okhttp3.Request; -import okhttp3.Response; -import okhttp3.ResponseBody; /** * activity 封装 @@ -134,6 +107,12 @@ public abstract void initViews(); + + public boolean isNull(Object object){ + return object == null || object.toString().trim().equals("") || object.equals("null"); + } + + AlertDialog loadingDialog; /** * 显示加载弹框 diff --git a/app/src/main/java/com/runt/open/mvvm/listener/CustomClickListener.java b/app/src/main/java/com/runt/open/mvvm/listener/CustomClickListener.java new file mode 100644 index 0000000..08a5e24 --- /dev/null +++ b/app/src/main/java/com/runt/open/mvvm/listener/CustomClickListener.java @@ -0,0 +1,37 @@ +package com.runt.open.mvvm.listener; + +import android.view.View; + +/** + * My father is Object, ites purpose of + * + * @purpose Created by Runt (qingingrunt2010@qq.com) on 2020-4-14. + */ +public abstract class CustomClickListener implements View.OnClickListener { + private long mLastClickTime; + private long timeInterval = 500L; + + public CustomClickListener() { + + } + + public CustomClickListener(long interval) { + this.timeInterval = interval; + } + + @Override + public void onClick(View v) { + long nowTime = System.currentTimeMillis(); + if (nowTime - mLastClickTime > timeInterval) { + // 单次点击事件 + onSingleClick(v); + mLastClickTime = nowTime; + } else { + // 快速点击事件 + onFastClick(v); + } + } + + protected abstract void onSingleClick(View view); + protected void onFastClick(View v){}; +} \ No newline at end of file diff --git a/app/src/main/java/com/runt/open/mvvm/retrofit/api/LoginApiCenter.java b/app/src/main/java/com/runt/open/mvvm/retrofit/api/LoginApiCenter.java new file mode 100644 index 0000000..7e03dc2 --- /dev/null +++ b/app/src/main/java/com/runt/open/mvvm/retrofit/api/LoginApiCenter.java @@ -0,0 +1,24 @@ +package com.runt.open.mvvm.retrofit.api; + +import com.runt.open.mvvm.ui.login.LoggedInUser; + +import io.reactivex.Observable; +import retrofit2.http.Field; +import retrofit2.http.FormUrlEncoded; +import retrofit2.http.POST; + +/** + * Created by Administrator on 2021/11/15 0015. + */ +public interface LoginApiCenter { + @FormUrlEncoded + @POST("login") + Observable<LoggedInUser> login(@Field("phone") String phone,@Field("pass") String pass); + + + @FormUrlEncoded + @POST("login") + Observable<LoggedInUser> loginByCode(@Field("phone") String phone,@Field("code") String code); + + +} diff --git a/app/src/main/java/com/runt/open/mvvm/ui/dashboard/DashboardFragment.java b/app/src/main/java/com/runt/open/mvvm/ui/dashboard/DashboardFragment.java deleted file mode 100644 index 7266305..0000000 --- a/app/src/main/java/com/runt/open/mvvm/ui/dashboard/DashboardFragment.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.runt.open.mvvm.ui.dashboard; - -import android.os.Bundle; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; -import android.widget.TextView; -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.fragment.app.Fragment; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; -import com.runt.open.mvvm.R; -import com.runt.open.mvvm.databinding.FragmentDashboardBinding; - -public class DashboardFragment extends Fragment { - - private DashboardViewModel dashboardViewModel; -private FragmentDashboardBinding binding; - - public View onCreateView(@NonNull LayoutInflater inflater, - ViewGroup container, Bundle savedInstanceState) { - dashboardViewModel = - new ViewModelProvider(this).get(DashboardViewModel.class); - - binding = FragmentDashboardBinding.inflate(inflater, container, false); - View root = binding.getRoot(); - - final TextView textView = binding.textDashboard; - dashboardViewModel.getText().observe(getViewLifecycleOwner(), new Observer<String>() { - @Override - public void onChanged(@Nullable String s) { - textView.setText(s); - } - }); - return root; - } - -@Override - public void onDestroyView() { - super.onDestroyView(); - binding = null; - } -} \ No newline at end of file diff --git a/app/src/main/java/com/runt/open/mvvm/ui/dashboard/DashboardViewModel.java b/app/src/main/java/com/runt/open/mvvm/ui/dashboard/DashboardViewModel.java deleted file mode 100644 index d7234f7..0000000 --- a/app/src/main/java/com/runt/open/mvvm/ui/dashboard/DashboardViewModel.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.runt.open.mvvm.ui.dashboard; - -import androidx.lifecycle.LiveData; -import androidx.lifecycle.MutableLiveData; -import androidx.lifecycle.ViewModel; - -public class DashboardViewModel extends ViewModel { - - private MutableLiveData<String> mText; - - public DashboardViewModel() { - mText = new MutableLiveData<>(); - mText.setValue("This is dashboard fragment"); - } - - public LiveData<String> getText() { - return mText; - } -} \ No newline at end of file diff --git a/app/src/main/java/com/runt/open/mvvm/ui/home/HomeFragment.java b/app/src/main/java/com/runt/open/mvvm/ui/home/HomeFragment.java deleted file mode 100644 index bade84b..0000000 --- a/app/src/main/java/com/runt/open/mvvm/ui/home/HomeFragment.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.runt.open.mvvm.ui.home; - -import android.os.Bundle; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; -import android.widget.TextView; -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.fragment.app.Fragment; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; -import com.runt.open.mvvm.R; -import com.runt.open.mvvm.databinding.FragmentHomeBinding; - -public class HomeFragment extends Fragment { - - private HomeViewModel homeViewModel; -private FragmentHomeBinding binding; - - public View onCreateView(@NonNull LayoutInflater inflater, - ViewGroup container, Bundle savedInstanceState) { - homeViewModel = - new ViewModelProvider(this).get(HomeViewModel.class); - - binding = FragmentHomeBinding.inflate(inflater, container, false); - View root = binding.getRoot(); - - final TextView textView = binding.textHome; - homeViewModel.getText().observe(getViewLifecycleOwner(), new Observer<String>() { - @Override - public void onChanged(@Nullable String s) { - textView.setText(s); - } - }); - return root; - } - -@Override - public void onDestroyView() { - super.onDestroyView(); - binding = null; - } -} \ No newline at end of file diff --git a/app/src/main/java/com/runt/open/mvvm/ui/home/HomeViewModel.java b/app/src/main/java/com/runt/open/mvvm/ui/home/HomeViewModel.java deleted file mode 100644 index a728c8a..0000000 --- a/app/src/main/java/com/runt/open/mvvm/ui/home/HomeViewModel.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.runt.open.mvvm.ui.home; - -import androidx.lifecycle.LiveData; -import androidx.lifecycle.MutableLiveData; -import androidx.lifecycle.ViewModel; - -public class HomeViewModel extends ViewModel { - - private MutableLiveData<String> mText; - - public HomeViewModel() { - mText = new MutableLiveData<>(); - mText.setValue("This is home fragment"); - } - - public LiveData<String> getText() { - return mText; - } -} \ No newline at end of file diff --git a/app/src/main/java/com/runt/open/mvvm/ui/login/LoggedInUser.java b/app/src/main/java/com/runt/open/mvvm/ui/login/LoggedInUser.java new file mode 100644 index 0000000..8a5ad19 --- /dev/null +++ b/app/src/main/java/com/runt/open/mvvm/ui/login/LoggedInUser.java @@ -0,0 +1,10 @@ +package com.runt.open.mvvm.ui.login; + +import com.runt.open.mvvm.data.BaseApiResult; + +/** + * Created by Administrator on 2021/11/15 0015. + */ +public class LoggedInUser extends BaseApiResult<UserBean> { + +} diff --git a/app/src/main/java/com/runt/open/mvvm/ui/login/LoginDataSource.java b/app/src/main/java/com/runt/open/mvvm/ui/login/LoginDataSource.java new file mode 100644 index 0000000..6b88fa8 --- /dev/null +++ b/app/src/main/java/com/runt/open/mvvm/ui/login/LoginDataSource.java @@ -0,0 +1,7 @@ +package com.runt.open.mvvm.ui.login; + +/** + * Created by Administrator on 2021/11/15 0015. + */ +public class LoginDataSource { +} diff --git a/app/src/main/java/com/runt/open/mvvm/ui/login/LoginViewModel.java b/app/src/main/java/com/runt/open/mvvm/ui/login/LoginViewModel.java new file mode 100644 index 0000000..866420b --- /dev/null +++ b/app/src/main/java/com/runt/open/mvvm/ui/login/LoginViewModel.java @@ -0,0 +1,30 @@ +package com.runt.open.mvvm.ui.login; + +import androidx.lifecycle.MutableLiveData; + +import com.runt.open.mvvm.base.model.BaseViewModel; +import com.runt.open.mvvm.retrofit.api.LoginApiCenter; +import com.runt.open.mvvm.retrofit.observable.HttpObserver; +import com.runt.open.mvvm.retrofit.utils.RetrofitUtils; + +import io.reactivex.Observable; + +/** + * Created by Administrator on 2021/11/15 0015. + */ +public class LoginViewModel extends BaseViewModel { + + MutableLiveData<LoggedInUser> loginResult = new MutableLiveData<>(); + + public MutableLiveData<LoggedInUser> getLoginResult() { + return loginResult; + } + + public void login(String username, String password) { + // can be launched in a separate asynchronous job + final Observable<LoggedInUser> userObservable = RetrofitUtils.getInstance().getRetrofit(LoginApiCenter.class).login(username, password); + httpObserverOn(userObservable,new HttpObserver<LoggedInUser>(loginResult){}); + } + + +} diff --git a/app/src/main/java/com/runt/open/mvvm/ui/login/UserBean.java b/app/src/main/java/com/runt/open/mvvm/ui/login/UserBean.java new file mode 100644 index 0000000..ccb8082 --- /dev/null +++ b/app/src/main/java/com/runt/open/mvvm/ui/login/UserBean.java @@ -0,0 +1,278 @@ +package com.runt.open.mvvm.ui.login; + +/** + * Created by Administrator on 2021/11/15 0015. + */ + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; + +/** + * 用户表 AdvertCustomer + * @author Runt_自动生成 + * @email qingingrunt2010@qq.com + * @date 2020-04-17 20:28:26 + */ +public class UserBean implements Serializable { + + private static final long serialVersionUID = 1L; + + private static UserBean user; + + public static UserBean getUser() { + return user; + } + + public static void setUser(UserBean user) { + UserBean.user = user; + } + + /** 主键 **/ + private String id; + + + /** 手机号 **/ + private String phone; + + /** 登录token **/ + private String token; + + /** 昵称 **/ + private String username; + + /** 头像 **/ + private String head; + + /** 金币数量 **/ + private int coin; + + /* 连续签到天数 */ + private int sign; + + /** 用户类型(0推广,1店员,2商家,3广告商) **/ + private Integer type; + + /** 上级管理者 **/ + private String upuser; + + /** 余额 **/ + private BigDecimal balance; + + /** 会员等级(0普通用户,1会员) **/ + private Integer vlevel; + + /** 会员到期时间 **/ + private Date vtime; + + /** 状态0通过,1审核中,-1封收益 , -2 限制支付 , -3限制广告 ,-4限制发送短信,-5永久限制发送短信,-6 限制登录 **/ + private String status; + + /** 真实姓名 **/ + private String realname; + + /** 银行卡 **/ + private String bank; + + /** 支付宝 **/ + private String alipay; + + /** 微信 **/ + private String wechat; + + /** QQ **/ + private String qq; + + /** 创建时间 **/ + private Date ctime; + + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + + + public String getPhone() { + return phone; + } + + public void setPhone(String phone) { + this.phone = phone; + } + + + public String getToken() { + return token; + } + + public void setToken(String token) { + this.token = token; + } + + + + public String getUsername() { + return username; + } + + public void setUsername(String username) { + this.username = username; + } + + + public String getHead() { + return head; + } + + public void setHead(String head) { + this.head = head; + } + + + public Integer getType() { + return type; + } + + public void setType(Integer type) { + this.type = type; + } + + + public String getUpuser() { + return upuser; + } + + public void setUpuser(String upuser) { + this.upuser = upuser; + } + + + public BigDecimal getBalance() { + return balance; + } + + public void setBalance(BigDecimal balance) { + this.balance = balance; + } + + + public Integer getVlevel() { + return vlevel; + } + + public void setVlevel(Integer vlevel) { + this.vlevel = vlevel; + } + + + public Date getVtime() { + return vtime; + } + + public void setVtime(Date vtime) { + this.vtime = vtime; + } + + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + + public String getRealname() { + return realname; + } + + public void setRealname(String realname) { + this.realname = realname; + } + + public String getBank() { + return bank; + } + + public void setBank(String bank) { + this.bank = bank; + } + + public String getAlipay() { + return alipay; + } + + public void setAlipay(String alipay) { + this.alipay = alipay; + } + + public String getWechat() { + return wechat; + } + + public void setWechat(String wechat) { + this.wechat = wechat; + } + + + public String getQq() { + return qq; + } + + public void setQq(String qq) { + this.qq = qq; + } + + + public Date getCtime() { + return ctime; + } + + public void setCtime(Date ctime) { + this.ctime = ctime; + } + + public int getCoin() { + return coin; + } + + public void setCoin(int coin) { + this.coin = coin; + } + + public int getSign() { + return sign; + } + + public void setSign(int sign) { + this.sign = sign; + } + + @Override + public String toString() { + return "UserBean{" + + "id='" + id + '\'' + + ", phone='" + phone + '\'' + + ", token='" + token + '\'' + + ", username='" + username + '\'' + + ", head='" + head + '\'' + + ", coin=" + coin + + ", sign=" + sign + + ", type=" + type + + ", upuser='" + upuser + '\'' + + ", balance=" + balance + + ", vlevel=" + vlevel + + ", vtime=" + vtime + + ", status=" + status + + ", wechat='" + wechat + '\'' + + ", qq='" + qq + '\'' + + ", ctime=" + ctime + + '}'; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/runt/open/mvvm/ui/main/dashboard/DashboardFragment.java b/app/src/main/java/com/runt/open/mvvm/ui/main/dashboard/DashboardFragment.java new file mode 100644 index 0000000..75b9a1e --- /dev/null +++ b/app/src/main/java/com/runt/open/mvvm/ui/main/dashboard/DashboardFragment.java @@ -0,0 +1,44 @@ +package com.runt.open.mvvm.ui.main.dashboard; + +import android.os.Bundle; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.TextView; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.fragment.app.Fragment; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.runt.open.mvvm.databinding.FragmentDashboardBinding; + +public class DashboardFragment extends Fragment { + + private DashboardViewModel dashboardViewModel; +private FragmentDashboardBinding binding; + + public View onCreateView(@NonNull LayoutInflater inflater, + ViewGroup container, Bundle savedInstanceState) { + dashboardViewModel = + new ViewModelProvider(this).get(DashboardViewModel.class); + + binding = FragmentDashboardBinding.inflate(inflater, container, false); + View root = binding.getRoot(); + + final TextView textView = binding.textDashboard; + dashboardViewModel.getText().observe(getViewLifecycleOwner(), new Observer<String>() { + @Override + public void onChanged(@Nullable String s) { + textView.setText(s); + } + }); + return root; + } + +@Override + public void onDestroyView() { + super.onDestroyView(); + binding = null; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/runt/open/mvvm/ui/main/dashboard/DashboardViewModel.java b/app/src/main/java/com/runt/open/mvvm/ui/main/dashboard/DashboardViewModel.java new file mode 100644 index 0000000..b2d3f43 --- /dev/null +++ b/app/src/main/java/com/runt/open/mvvm/ui/main/dashboard/DashboardViewModel.java @@ -0,0 +1,19 @@ +package com.runt.open.mvvm.ui.main.dashboard; + +import androidx.lifecycle.LiveData; +import androidx.lifecycle.MutableLiveData; +import androidx.lifecycle.ViewModel; + +public class DashboardViewModel extends ViewModel { + + private MutableLiveData<String> mText; + + public DashboardViewModel() { + mText = new MutableLiveData<>(); + mText.setValue("This is dashboard fragment"); + } + + public LiveData<String> getText() { + return mText; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/runt/open/mvvm/ui/main/home/HomeFragment.java b/app/src/main/java/com/runt/open/mvvm/ui/main/home/HomeFragment.java new file mode 100644 index 0000000..4e34a2b --- /dev/null +++ b/app/src/main/java/com/runt/open/mvvm/ui/main/home/HomeFragment.java @@ -0,0 +1,44 @@ +package com.runt.open.mvvm.ui.main.home; + +import android.os.Bundle; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.TextView; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.fragment.app.Fragment; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.runt.open.mvvm.databinding.FragmentHomeBinding; + +public class HomeFragment extends Fragment { + + private HomeViewModel homeViewModel; +private FragmentHomeBinding binding; + + public View onCreateView(@NonNull LayoutInflater inflater, + ViewGroup container, Bundle savedInstanceState) { + homeViewModel = + new ViewModelProvider(this).get(HomeViewModel.class); + + binding = FragmentHomeBinding.inflate(inflater, container, false); + View root = binding.getRoot(); + + final TextView textView = binding.textHome; + homeViewModel.getText().observe(getViewLifecycleOwner(), new Observer<String>() { + @Override + public void onChanged(@Nullable String s) { + textView.setText(s); + } + }); + return root; + } + +@Override + public void onDestroyView() { + super.onDestroyView(); + binding = null; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/runt/open/mvvm/ui/main/home/HomeViewModel.java b/app/src/main/java/com/runt/open/mvvm/ui/main/home/HomeViewModel.java new file mode 100644 index 0000000..34dbdc4 --- /dev/null +++ b/app/src/main/java/com/runt/open/mvvm/ui/main/home/HomeViewModel.java @@ -0,0 +1,19 @@ +package com.runt.open.mvvm.ui.main.home; + +import androidx.lifecycle.LiveData; +import androidx.lifecycle.MutableLiveData; +import androidx.lifecycle.ViewModel; + +public class HomeViewModel extends ViewModel { + + private MutableLiveData<String> mText; + + public HomeViewModel() { + mText = new MutableLiveData<>(); + mText.setValue("This is home fragment"); + } + + public LiveData<String> getText() { + return mText; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/runt/open/mvvm/ui/main/notifications/NotificationsFragment.java b/app/src/main/java/com/runt/open/mvvm/ui/main/notifications/NotificationsFragment.java new file mode 100644 index 0000000..72d952c --- /dev/null +++ b/app/src/main/java/com/runt/open/mvvm/ui/main/notifications/NotificationsFragment.java @@ -0,0 +1,44 @@ +package com.runt.open.mvvm.ui.main.notifications; + +import android.os.Bundle; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.TextView; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.fragment.app.Fragment; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProvider; + +import com.runt.open.mvvm.databinding.FragmentNotificationsBinding; + +public class NotificationsFragment extends Fragment { + + private NotificationsViewModel notificationsViewModel; +private FragmentNotificationsBinding binding; + + public View onCreateView(@NonNull LayoutInflater inflater, + ViewGroup container, Bundle savedInstanceState) { + notificationsViewModel = + new ViewModelProvider(this).get(NotificationsViewModel.class); + + binding = FragmentNotificationsBinding.inflate(inflater, container, false); + View root = binding.getRoot(); + + final TextView textView = binding.textNotifications; + notificationsViewModel.getText().observe(getViewLifecycleOwner(), new Observer<String>() { + @Override + public void onChanged(@Nullable String s) { + textView.setText(s); + } + }); + return root; + } + +@Override + public void onDestroyView() { + super.onDestroyView(); + binding = null; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/runt/open/mvvm/ui/main/notifications/NotificationsViewModel.java b/app/src/main/java/com/runt/open/mvvm/ui/main/notifications/NotificationsViewModel.java new file mode 100644 index 0000000..7e47f94 --- /dev/null +++ b/app/src/main/java/com/runt/open/mvvm/ui/main/notifications/NotificationsViewModel.java @@ -0,0 +1,19 @@ +package com.runt.open.mvvm.ui.main.notifications; + +import androidx.lifecycle.LiveData; +import androidx.lifecycle.MutableLiveData; +import androidx.lifecycle.ViewModel; + +public class NotificationsViewModel extends ViewModel { + + private MutableLiveData<String> mText; + + public NotificationsViewModel() { + mText = new MutableLiveData<>(); + mText.setValue("This is notifications fragment"); + } + + public LiveData<String> getText() { + return mText; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/runt/open/mvvm/ui/notifications/NotificationsFragment.java b/app/src/main/java/com/runt/open/mvvm/ui/notifications/NotificationsFragment.java deleted file mode 100644 index fc02849..0000000 --- a/app/src/main/java/com/runt/open/mvvm/ui/notifications/NotificationsFragment.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.runt.open.mvvm.ui.notifications; - -import android.os.Bundle; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; -import android.widget.TextView; -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.fragment.app.Fragment; -import androidx.lifecycle.Observer; -import androidx.lifecycle.ViewModelProvider; -import com.runt.open.mvvm.R; -import com.runt.open.mvvm.databinding.FragmentNotificationsBinding; - -public class NotificationsFragment extends Fragment { - - private NotificationsViewModel notificationsViewModel; -private FragmentNotificationsBinding binding; - - public View onCreateView(@NonNull LayoutInflater inflater, - ViewGroup container, Bundle savedInstanceState) { - notificationsViewModel = - new ViewModelProvider(this).get(NotificationsViewModel.class); - - binding = FragmentNotificationsBinding.inflate(inflater, container, false); - View root = binding.getRoot(); - - final TextView textView = binding.textNotifications; - notificationsViewModel.getText().observe(getViewLifecycleOwner(), new Observer<String>() { - @Override - public void onChanged(@Nullable String s) { - textView.setText(s); - } - }); - return root; - } - -@Override - public void onDestroyView() { - super.onDestroyView(); - binding = null; - } -} \ No newline at end of file diff --git a/app/src/main/java/com/runt/open/mvvm/ui/notifications/NotificationsViewModel.java b/app/src/main/java/com/runt/open/mvvm/ui/notifications/NotificationsViewModel.java deleted file mode 100644 index 3e3c5d7..0000000 --- a/app/src/main/java/com/runt/open/mvvm/ui/notifications/NotificationsViewModel.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.runt.open.mvvm.ui.notifications; - -import androidx.lifecycle.LiveData; -import androidx.lifecycle.MutableLiveData; -import androidx.lifecycle.ViewModel; - -public class NotificationsViewModel extends ViewModel { - - private MutableLiveData<String> mText; - - public NotificationsViewModel() { - mText = new MutableLiveData<>(); - mText.setValue("This is notifications fragment"); - } - - public LiveData<String> getText() { - return mText; - } -} \ No newline at end of file diff --git a/app/src/main/java/com/runt/open/mvvm/ui/splash/SplashActivity.java b/app/src/main/java/com/runt/open/mvvm/ui/splash/SplashActivity.java new file mode 100644 index 0000000..988e8b6 --- /dev/null +++ b/app/src/main/java/com/runt/open/mvvm/ui/splash/SplashActivity.java @@ -0,0 +1,93 @@ +package com.runt.open.mvvm.ui.splash; + +import android.content.Intent; +import android.os.Handler; +import android.os.Message; +import android.util.Log; +import android.view.View; +import android.view.WindowManager; + +import androidx.annotation.NonNull; +import androidx.lifecycle.Observer; + +import com.bytedance.sdk.openadsdk.TTSplashAd; +import com.runt.open.mvvm.MainActivity; +import com.runt.open.mvvm.base.activities.BaseActivity; +import com.runt.open.mvvm.databinding.ActivitySplashBinding; + + +/** + * My father is Object, ites purpose of 启动页 + * + * @purpose Created by Runt (qingingrunt2010@qq.com) on 2020-4-16. + */ +public class SplashActivity extends BaseActivity<ActivitySplashBinding,SplashViewModel> { + + final String TAG = "WelcomeActivity"; + + Handler handler = new Handler(){ + boolean started = false; + @Override + public void handleMessage(@NonNull Message msg) { + super.handleMessage(msg); + if(!started) {//确保该语句只执行一次 + started = true; + Intent intent = new Intent(mContext, MainActivity.class); + startActivity(intent); + finish(); + } + } + }; + + @Override + public void initViews() { + getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, + WindowManager.LayoutParams.FLAG_FULLSCREEN);//全屏 + hideBottomUIMenu(); + viewModel.getSplashAd().observe(this, new Observer<TTSplashAd>() { + @Override + public void onChanged(TTSplashAd ttSplashAd) { + binding.splashAdContainer.addView(ttSplashAd.getSplashView()); + //设置SplashView的交互监听器 + ttSplashAd.setSplashInteractionListener(new TTSplashAd.AdInteractionListener() { + @Override + public void onAdClicked(View view, int type) { + Log.d(TAG, "onAdClicked"); + } + + @Override + public void onAdShow(View view, int type) { + Log.d(TAG, "onAdShow"); + } + + @Override + public void onAdSkip() { + Log.d(TAG, "onAdSkip"); + handler.sendMessage(new Message()); + + } + + @Override + public void onAdTimeOver() { + Log.d(TAG, "onAdTimeOver"); + handler.sendMessage(new Message()); + } + }); + } + }); + viewModel.getTimeOut().observe(this, new Observer<Integer>() { + @Override + public void onChanged(Integer integer) { + handler.sendMessage(new Message()); + } + }); + viewModel.applyTdAd(mContext);;//请求广告 + } + + + @Override + protected void onDestroy() { + super.onDestroy(); + binding.splashAdContainer.removeAllViews(); + } +} diff --git a/app/src/main/java/com/runt/open/mvvm/ui/splash/SplashViewModel.java b/app/src/main/java/com/runt/open/mvvm/ui/splash/SplashViewModel.java new file mode 100644 index 0000000..61e73d0 --- /dev/null +++ b/app/src/main/java/com/runt/open/mvvm/ui/splash/SplashViewModel.java @@ -0,0 +1,87 @@ +package com.runt.open.mvvm.ui.splash; + +import android.content.Context; +import android.os.Handler; +import android.util.Log; + +import androidx.lifecycle.MutableLiveData; + +import com.bytedance.sdk.openadsdk.AdSlot; +import com.bytedance.sdk.openadsdk.TTAdNative; +import com.bytedance.sdk.openadsdk.TTAdSdk; +import com.bytedance.sdk.openadsdk.TTSplashAd; +import com.runt.open.mvvm.base.model.BaseViewModel; + +import java.util.Date; + +/** + * Created by Administrator on 2021/11/15 0015. + */ +public class SplashViewModel extends BaseViewModel { + + final String TAG = "SplashViewModel"; + long cTime = new Date().getTime(),limitTime = 2000; + + private MutableLiveData<TTSplashAd> splashAd = new MutableLiveData<>(); + private MutableLiveData<Integer> timeOut = new MutableLiveData<>(); + + public MutableLiveData<TTSplashAd> getSplashAd() { + return splashAd; + } + + public MutableLiveData<Integer> getTimeOut() { + return timeOut; + } + + public void countdown(){ + new Handler().postDelayed(new Runnable() { + @Override + public void run() { + timeOut.setValue(0); + } + },limitTime); + } + + /** + * 请求广告 + * @param context + */ + public void applyTdAd(Context context){ + countdown(); + TTAdNative mTTAdNative = TTAdSdk.getAdManager().createAdNative(context); + AdSlot adSlot = new AdSlot.Builder() + .setCodeId("887382769")//广告id + .setSupportDeepLink(true) + .setImageAcceptedSize(1080,1920) + //模板广告需要设置期望个性化模板广告的大小,单位dp,代码位是否属于个性化模板广告,请在穿山甲平台查看 + //.setExpressViewAcceptedSize(expressViewWidth, expressViewHeight) + .build(); + mTTAdNative.loadSplashAd(adSlot,new TTAdNative.SplashAdListener() { + @Override + public void onError(int i, String s) { + Log.i(TAG,"code:"+i+" message:"+s); + } + + @Override + public void onTimeout() { + Log.i(TAG,"超时"); + } + + @Override + public void onSplashAdLoad(TTSplashAd ttSplashAd) { + Log.d(TAG, "开屏广告请求成功"); + + long waitTime = limitTime - (new Date().getTime() - cTime); + if(waitTime > 0){//是否超过限定时间 没有超时则继续 + new Handler().postDelayed(new Runnable() { + @Override + public void run() { + splashAd.setValue(ttSplashAd); + } + }, waitTime > 0 ? waitTime : 0); + } + } + }); + } + +} diff --git a/app/src/main/java/com/runt/open/mvvm/util/AlgorithmUtils.java b/app/src/main/java/com/runt/open/mvvm/util/AlgorithmUtils.java new file mode 100644 index 0000000..88484f9 --- /dev/null +++ b/app/src/main/java/com/runt/open/mvvm/util/AlgorithmUtils.java @@ -0,0 +1,75 @@ +package com.runt.open.mvvm.util; + + +import android.graphics.Point; + +/** + * Created by Administrator on 2018/4/24. + */ + +public class AlgorithmUtils { + + /** + * 密码等级算法 + * @param pwd + * @return + */ + public static int pwdLevel(String pwd){ + int level = 0 ; + boolean flag = false; + try{ + Integer.parseInt(pwd); + }catch (Exception e){ + flag =true; + } + + + boolean isHigh = false; + boolean hasUp = false; + boolean hasLow = false; + boolean hasNum = false; + for(int i = 0 ; i < pwd.length(); i ++ ){ + int chars = (int)pwd.toCharArray()[i]; + if(chars>64 && chars<91){//包含大写字母 + hasUp = true; + }else if(chars>96 && chars<123){//包含小写字母 + hasLow = true; + }else if(chars>47 && chars<58){//数字 + hasNum = true; + }else{//特殊字符 + isHigh = true; + } + } + int length = 7; + if(pwd.length()>length && isHigh && hasLow && hasUp && hasNum){//长度足够,包含大小写+特殊字符+数字 + level = 4 ; + }else if(pwd.length()>length && isHigh && !hasLow && hasUp && hasNum){//长度足够,包含大写+特殊字符+数字 + level = 3 ; + }else if(pwd.length()>length && isHigh && hasLow && !hasUp && hasNum){//长度足够,包含小写+特殊字符+数字 + level = 3 ; + }else if(pwd.length()>length && !isHigh && hasLow && hasUp && hasNum){//长度足够,包含大、小写+数字 + level = 3 ; + }else if(pwd.length()>length && isHigh && !hasLow && !hasUp && hasNum){//长度足够,只包含特殊符号+数字 + level = 2 ; + }else if(pwd.length()>length && !isHigh && !hasLow && hasUp && hasNum){//长度足够,只包含大写字母+数字 + level = 2 ; + }else if(pwd.length()>length && !isHigh && hasLow && !hasUp && hasNum){//长度足够,只包含小写字母+数字 + level = 2 ; + }else if(pwd.length()>length && isHigh && !hasLow && !hasUp && !hasNum){//长度足够,只包含特殊符号 + level = 1 ; + }else if(pwd.length()>length && !isHigh && !hasLow && hasUp && !hasNum){//长度足够,只包含大写字母 + level = 1 ; + }else if(pwd.length()>length && !isHigh && hasLow && !hasUp && !hasNum){//长度足够,只包含小写字母 + level = 1 ; + }else if((pwd.length()<length+1 && pwd.length() > 0 ) || !flag){//全是数字或长度太小 + level = 0 ; + }else if(pwd.length() == 0){ + level = -1 ; + } + + //MyMyLog.i("AlgorithmUtils", String.format("pwdLevel isHigh:%s , hasLow:%s , hasUp:%s , hasNum:%s ,level:%s",isHigh , hasLow , hasUp , hasNum ,level)); + + return level; + } + +} diff --git a/app/src/main/java/com/runt/open/mvvm/util/Configuration.java b/app/src/main/java/com/runt/open/mvvm/util/Configuration.java new file mode 100644 index 0000000..c4adb9c --- /dev/null +++ b/app/src/main/java/com/runt/open/mvvm/util/Configuration.java @@ -0,0 +1,48 @@ +package com.runt.open.mvvm.util; + +/** + * Created by xanarry on 2016/5/22. + */ +public class Configuration { + + + public static final int REQUEST_CODE_PIC = 303; + + + public final static String MESS_TIP_NET_ERROR = "网络连接不畅,请稍后再试!!!"; + public final static String KEY_MES_CODE= "code"; + public final static String KEY_MES_TIME= "time"; + public final static String KEY_MES_MESSAGE= "msg"; + public final static String KEY_MES_ERROR= "error"; + public final static String KEY_CODE_SUCCESS= "0";//code 0 成功 + public final static int KEY_CODE_INFO= 101;//修改资料 + public final static String KEY_USER = "user"; + public final static String KEY_ADVERT= "advert"; + public final static String KEY_DATA= "data"; + public final static String KEY_FILES= "files"; + public final static String KEY_SCREEN_TYPE = "screen_type";//屏幕类型 + public final static String KEY_SCREEN_FILES= "screen_files";//播放的资源文件列表 + public final static String KEY_NAME= "name"; + public final static String KEY_MARk= "mark"; + public final static String KEY_ORDER= "order"; + public final static String FILENAME_MK = "fileName"; + public final static String FILEPATH = "path"; + public final static String STR_APPLY_DATA = "apply datas"; + public final static String STR_FILE_PLAN_FAILED = "file plan failed"; + public final static String STR_START_FILE_PLAN = "start file plan"; + public final static String STR_FINISHED_FILE_PLAN = "finished plan"; + public final static String FILESIZE_MK = "fileSize"; + + public static final String KEY_EXTRAS = "extras"; + public static final String KEY_USERID = "customerId"; + public static final String KEY_TOKEN = "token"; + public static final String KEY_USERNAME = "username"; + public static final String KEY_PHONE = "phone"; + public static final String KEY_USERPASS = "userpass"; + public static final String MESSAGE_RECEIVED_ACTION = "MESSAGE_RECEIVED_ACTION"; + + public static final String KEY_REGION = "region", + IS_LOGIN = "is_login"; + + +} diff --git a/app/src/main/java/com/runt/open/mvvm/util/SpUtils.java b/app/src/main/java/com/runt/open/mvvm/util/SpUtils.java index 5233129..43b447a 100644 --- a/app/src/main/java/com/runt/open/mvvm/util/SpUtils.java +++ b/app/src/main/java/com/runt/open/mvvm/util/SpUtils.java @@ -27,8 +27,8 @@ } - public final String PROJECT = "project"; - public final String USER = "user"; + public final static String PROJECT = "project"; + public final static String USER = "user"; public boolean clearData(Context context, String keyShared){ diff --git a/app/src/main/res/anim/anima_make_none.xml b/app/src/main/res/anim/anima_make_none.xml new file mode 100644 index 0000000..0b2b8c4 --- /dev/null +++ b/app/src/main/res/anim/anima_make_none.xml @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="utf-8"?> +<set xmlns:android="http://schemas.android.com/apk/res/android" + android:ordering="together"> + <objectAnimator + android:duration="150" + android:propertyName="scaleX" + android:valueFrom="1" + android:valueTo="0" + ></objectAnimator> + <objectAnimator + android:duration="150" + android:propertyName="scaleY" + android:valueFrom="1" + android:valueTo="0" + ></objectAnimator> +</set> \ No newline at end of file diff --git a/app/src/main/res/color/home_nav_color.xml b/app/src/main/res/color/home_nav_color.xml new file mode 100644 index 0000000..162c605 --- /dev/null +++ b/app/src/main/res/color/home_nav_color.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android" > + <item android:state_checked="false" android:color="@color/gray_pressed" /> + <item android:state_checked="true" android:color="@color/txt_normal" /> +</selector> \ No newline at end of file diff --git a/app/src/main/res/color/verify_code.xml b/app/src/main/res/color/verify_code.xml new file mode 100644 index 0000000..ec4c198 --- /dev/null +++ b/app/src/main/res/color/verify_code.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:tools="http://schemas.android.com/tools" xmlns:android="http://schemas.android.com/apk/res/android" tools:ignore="MissingDefaultResource"> + <item android:state_enabled="false" android:color="@color/holo_red_light" /> + <item android:color="@color/txt_normal" /> +</selector> \ No newline at end of file diff --git a/app/src/main/res/drawable-v21/bg_circle_default.xml b/app/src/main/res/drawable-v21/bg_circle_default.xml new file mode 100644 index 0000000..b799f15 --- /dev/null +++ b/app/src/main/res/drawable-v21/bg_circle_default.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="utf-8"?> +<ripple xmlns:android="http://schemas.android.com/apk/res/android" + android:color="@color/color_gray" > + <item> + <selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_focused="true"> + <shape> + <stroke android:width="0.5dp" android:color="@color/white" /> + <solid android:color="@color/input_bg" /> + <corners android:radius="@dimen/circle" /> + </shape> + </item> + <item> + <shape> + <stroke android:width="0.5dp" android:color="@color/white" /> + <solid android:color="@color/input_bg" /> + <corners android:radius="@dimen/circle" /> + <padding android:bottom="0dp" android:left="0dp" android:right="0dp" android:top="0dp" /> + </shape> + </item> + </selector> + </item> + +</ripple> \ No newline at end of file diff --git a/app/src/main/res/drawable-v21/bg_white.xml b/app/src/main/res/drawable-v21/bg_white.xml new file mode 100644 index 0000000..3c9a156 --- /dev/null +++ b/app/src/main/res/drawable-v21/bg_white.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="utf-8"?> +<ripple xmlns:android="http://schemas.android.com/apk/res/android" + android:color="@color/color_gray"> + <item> + <selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_pressed="true"> + <shape android:shape="rectangle"> + <solid android:color="@color/gray_pressed" /> + </shape> + </item> + + <item android:state_enabled="false"> + <shape android:shape="rectangle"> + <solid android:color="@color/cut_off_line" /> + </shape> + </item> + + <item> + <shape android:shape="rectangle"> + <solid android:color="@color/white" /> + </shape> + </item> + + </selector> + </item> + +</ripple> diff --git a/app/src/main/res/drawable-v21/bg_white_circle.xml b/app/src/main/res/drawable-v21/bg_white_circle.xml new file mode 100644 index 0000000..6306666 --- /dev/null +++ b/app/src/main/res/drawable-v21/bg_white_circle.xml @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="utf-8"?> +<ripple xmlns:android="http://schemas.android.com/apk/res/android" + android:color="@color/color_gray" > + <item> + <selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_enabled="false"> + <shape> + <stroke android:width="0.5dp" android:color="@color/white" /> + <solid android:color="@color/color_gray" /> + <corners android:radius="@dimen/circle" /> + </shape> + </item> + <item android:state_pressed="true"> + <shape> + <solid android:color="@color/gray_pressed" /> + <corners android:radius="@dimen/circle" /> + <padding android:bottom="0dp" android:left="0dp" android:right="0dp" android:top="0dp" /> + </shape> + </item> + <item> + <shape> + <solid android:color="@color/white" /> + <corners android:radius="@dimen/circle" /> + <padding android:bottom="0dp" android:left="0dp" android:right="0dp" android:top="0dp" /> + </shape> + </item> + </selector> + </item> + +</ripple> \ No newline at end of file diff --git a/app/src/main/res/drawable-v21/btn_blue_border.xml b/app/src/main/res/drawable-v21/btn_blue_border.xml new file mode 100644 index 0000000..d798efc --- /dev/null +++ b/app/src/main/res/drawable-v21/btn_blue_border.xml @@ -0,0 +1,37 @@ +<?xml version="1.0" encoding="utf-8"?> +<ripple xmlns:android="http://schemas.android.com/apk/res/android" + android:color="@color/deep_blue"> + <item> + <selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_pressed="true"> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/corner" /> + <solid android:color="@color/cut_off_line" /> + <stroke + android:width="1dp" + android:color="@color/link" /> + </shape> + </item> + + <item android:state_enabled="false"> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/corner" /> + <solid android:color="@color/cut_off_line" /> + </shape> + </item> + + <item> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/corner" /> + <gradient + android:angle="270" android:endColor="@color/white" android:startColor="@color/white" /> + <stroke + android:width="1dp" + android:color="@color/link" /> + </shape> + </item> + + </selector> + </item> + +</ripple> diff --git a/app/src/main/res/drawable-v21/btn_blue_circle_border.xml b/app/src/main/res/drawable-v21/btn_blue_circle_border.xml new file mode 100644 index 0000000..bb1c8a4 --- /dev/null +++ b/app/src/main/res/drawable-v21/btn_blue_circle_border.xml @@ -0,0 +1,37 @@ +<?xml version="1.0" encoding="utf-8"?> +<ripple xmlns:android="http://schemas.android.com/apk/res/android" + android:color="@color/deep_blue"> + <item> + <selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_pressed="true"> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/circle" /> + <solid android:color="@color/cut_off_line" /> + <stroke + android:width="1dp" + android:color="@color/link" /> + </shape> + </item> + + <item android:state_enabled="false"> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/circle" /> + <solid android:color="@color/cut_off_line" /> + </shape> + </item> + + <item> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/circle" /> + <gradient + android:angle="270" android:endColor="@color/white" android:startColor="@color/white" /> + <stroke + android:width="1dp" + android:color="@color/link" /> + </shape> + </item> + + </selector> + </item> + +</ripple> diff --git a/app/src/main/res/drawable-v21/btn_blue_corner.xml b/app/src/main/res/drawable-v21/btn_blue_corner.xml new file mode 100644 index 0000000..27929ad --- /dev/null +++ b/app/src/main/res/drawable-v21/btn_blue_corner.xml @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="utf-8"?> +<ripple xmlns:android="http://schemas.android.com/apk/res/android" + android:color="@color/deep_blue"> + <item> + <selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_pressed="true"> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/corner" /> + <solid android:color="@color/deep_blue" /> + </shape> + </item> + + <item android:state_enabled="false"> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/corner" /> + <solid android:color="@color/cut_off_line" /> + </shape> + </item> + + <item> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/corner" /> + <gradient + android:angle="270" android:endColor="@color/link" android:startColor="@color/link" /> + </shape> + </item> + + </selector> + </item> + +</ripple> diff --git a/app/src/main/res/drawable-v21/btn_circle.xml b/app/src/main/res/drawable-v21/btn_circle.xml new file mode 100644 index 0000000..b8750d6 --- /dev/null +++ b/app/src/main/res/drawable-v21/btn_circle.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="utf-8"?> +<ripple xmlns:android="http://schemas.android.com/apk/res/android" + android:color="@color/cut_off_line"> + <item> + <selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_pressed="true"> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/circle" /> + <solid android:color="@color/white" /> + </shape> + </item> + + <item android:state_enabled="false"> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/circle" /> + <solid android:color="@color/cut_off_line" /> + </shape> + </item> + + <item> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/circle" /> + <gradient + android:angle="270" android:endColor="@color/white" android:startColor="@color/white" /> + <stroke + android:width="1dp" + android:color="@color/cut_off_circle" /> + </shape> + </item> + + </selector> + </item> + +</ripple> diff --git a/app/src/main/res/drawable-v21/btn_circle_blue.xml b/app/src/main/res/drawable-v21/btn_circle_blue.xml new file mode 100644 index 0000000..0b85574 --- /dev/null +++ b/app/src/main/res/drawable-v21/btn_circle_blue.xml @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="utf-8"?> +<ripple xmlns:android="http://schemas.android.com/apk/res/android" + android:color="@color/cut_off_line"> + <item> + <selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_pressed="true"> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/circle" /> + <solid android:color="@color/deep_blue" /> + </shape> + </item> + + <item android:state_enabled="false"> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/circle" /> + <solid android:color="@color/btn_gray_normal" /> + </shape> + </item> + + <item> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/circle" /> + <gradient + android:angle="270" android:endColor="@color/theme" android:startColor="@color/theme" /> + </shape> + </item> + + </selector> + </item> + +</ripple> diff --git a/app/src/main/res/drawable-v21/btn_circle_red.xml b/app/src/main/res/drawable-v21/btn_circle_red.xml new file mode 100644 index 0000000..72044b8 --- /dev/null +++ b/app/src/main/res/drawable-v21/btn_circle_red.xml @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_pressed="true"> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/circle" /> + <solid android:color="@color/err" /> + </shape> + </item> + + <item android:state_enabled="false"> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/circle" /> + <solid android:color="@color/cut_off_line" /> + </shape> + </item> + + <item> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/circle" /> + <gradient + android:angle="270" android:endColor="@color/err" android:startColor="@color/err" /> + </shape> + </item> + +</selector> diff --git a/app/src/main/res/drawable-v21/btn_gray_border.xml b/app/src/main/res/drawable-v21/btn_gray_border.xml new file mode 100644 index 0000000..a818dce --- /dev/null +++ b/app/src/main/res/drawable-v21/btn_gray_border.xml @@ -0,0 +1,37 @@ +<?xml version="1.0" encoding="utf-8"?> +<ripple xmlns:android="http://schemas.android.com/apk/res/android" + android:color="@color/txt_enable"> + <item> + <selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_pressed="true"> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/corner" /> + <solid android:color="@color/cut_off_line" /> + <stroke + android:width="1dp" + android:color="@color/cut_off_line" /> + </shape> + </item> + + <item android:state_enabled="false"> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/corner" /> + <solid android:color="@color/cut_off_line" /> + </shape> + </item> + + <item> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/corner" /> + <gradient + android:angle="270" android:endColor="@color/white" android:startColor="@color/white" /> + <stroke + android:width="1dp" + android:color="@color/cut_off_line" /> + </shape> + </item> + + </selector> + </item> + +</ripple> diff --git a/app/src/main/res/drawable-v21/btn_gray_circle.xml b/app/src/main/res/drawable-v21/btn_gray_circle.xml new file mode 100644 index 0000000..241ad0a --- /dev/null +++ b/app/src/main/res/drawable-v21/btn_gray_circle.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="utf-8"?> +<ripple xmlns:android="http://schemas.android.com/apk/res/android" + android:color="@color/color_gray" > + <item> + <selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_focused="true"> + <shape> + <stroke android:width="0.5dp" android:color="@color/white" /> + <solid android:color="@color/input_bg" /> + <corners android:radius="@dimen/circle" /> + </shape> + </item> + <item> + <shape> + <stroke android:width="0.5dp" android:color="@color/white" /> + <solid android:color="@color/color_gray8" /> + <corners android:radius="@dimen/circle" /> + <padding android:bottom="0dp" android:left="0dp" android:right="0dp" android:top="0dp" /> + </shape> + </item> + </selector> + </item> + +</ripple> \ No newline at end of file diff --git a/app/src/main/res/drawable-v21/btn_white_lb_corner.xml b/app/src/main/res/drawable-v21/btn_white_lb_corner.xml new file mode 100644 index 0000000..df6fc0e --- /dev/null +++ b/app/src/main/res/drawable-v21/btn_white_lb_corner.xml @@ -0,0 +1,36 @@ +<?xml version="1.0" encoding="utf-8"?> +<ripple xmlns:android="http://schemas.android.com/apk/res/android" + android:color="@color/black_20"> + <item> + <selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_pressed="true"> + <shape android:shape="rectangle"> + <corners android:bottomLeftRadius="8dp" /> + <solid android:color="@color/black_10" /> + </shape> + </item> + + <item android:state_enabled="false"> + <shape android:shape="rectangle"> + <corners android:bottomLeftRadius="8dp" /> + <solid android:color="@color/black_10" /> + </shape> + </item> + + <item android:state_focused="true"> + <shape android:shape="rectangle"> + <corners android:bottomLeftRadius="8dp" /> + <solid android:color="@color/gray_normal" /> + </shape> + </item> + <item> + <shape android:shape="rectangle"> + <corners android:bottomLeftRadius="8dp" /> + <solid android:color="@color/white" /> + </shape> + </item> + + </selector> + </item> + +</ripple> diff --git a/app/src/main/res/drawable-v21/btn_white_rb_corner.xml b/app/src/main/res/drawable-v21/btn_white_rb_corner.xml new file mode 100644 index 0000000..4e9a3af --- /dev/null +++ b/app/src/main/res/drawable-v21/btn_white_rb_corner.xml @@ -0,0 +1,35 @@ +<?xml version="1.0" encoding="utf-8"?> +<ripple xmlns:android="http://schemas.android.com/apk/res/android" + android:color="@color/black_20"> + <item> + <selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_pressed="true"> + <shape android:shape="rectangle"> + <corners android:bottomRightRadius="8dp" /> + <solid android:color="@color/black_10" /> + </shape> + </item> + + <item android:state_enabled="false"> + <shape android:shape="rectangle"> + <corners android:bottomRightRadius="8dp" /> + <solid android:color="@color/black_10" /> + </shape> + </item> + <item android:state_focused="true"> + <shape android:shape="rectangle"> + <corners android:bottomRightRadius="8dp" /> + <solid android:color="@color/black" /> + </shape> + </item> + <item> + <shape android:shape="rectangle"> + <corners android:bottomRightRadius="8dp" /> + <solid android:color="@color/white" /> + </shape> + </item> + + </selector> + </item> + +</ripple> diff --git a/app/src/main/res/drawable-v21/enable_corner_border.xml b/app/src/main/res/drawable-v21/enable_corner_border.xml new file mode 100644 index 0000000..cc0c8dd --- /dev/null +++ b/app/src/main/res/drawable-v21/enable_corner_border.xml @@ -0,0 +1,38 @@ +<?xml version="1.0" encoding="utf-8"?> +<ripple xmlns:android="http://schemas.android.com/apk/res/android" + android:color="@color/enable_color" > + <item> + <selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_enabled="false"> + <shape> + <stroke android:width="0.5dp" android:color="@color/white" /> + <solid android:color="@color/enable_color" /> + <corners android:radius="@dimen/radius" /> + </shape> + </item> + <item android:state_pressed="true"> + <shape> + <solid android:color="@color/white" /> + <corners android:radius="@dimen/radius" /> + <padding android:bottom="0dp" android:left="0dp" android:right="0dp" android:top="0dp" /> + </shape> + </item> + <item android:state_checked="true"> + <shape> + <stroke android:width="0.5dp" android:color="@color/white" /> + <solid android:color="@color/theme_color" /> + <corners android:radius="@dimen/radius" /> + </shape> + </item> + <item> + <shape> + <stroke android:width="0.5dp" android:color="@color/white" /> + <solid android:color="@color/enable_color" /> + <corners android:radius="@dimen/radius" /> + <padding android:bottom="0dp" android:left="0dp" android:right="0dp" android:top="0dp" /> + </shape> + </item> + </selector> + </item> + +</ripple> \ No newline at end of file diff --git a/app/src/main/res/drawable-v21/theme_corner_border.xml b/app/src/main/res/drawable-v21/theme_corner_border.xml new file mode 100644 index 0000000..1762297 --- /dev/null +++ b/app/src/main/res/drawable-v21/theme_corner_border.xml @@ -0,0 +1,38 @@ +<?xml version="1.0" encoding="utf-8"?> +<ripple xmlns:android="http://schemas.android.com/apk/res/android" + android:color="@color/enable_color" > + <item> + <selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_enabled="false"> + <shape> + <stroke android:width="0.5dp" android:color="@color/white" /> + <solid android:color="@color/enable_color" /> + <corners android:radius="@dimen/radius" /> + </shape> + </item> + <item android:state_pressed="true"> + <shape> + <solid android:color="@color/white" /> + <corners android:radius="@dimen/radius" /> + <padding android:bottom="0dp" android:left="0dp" android:right="0dp" android:top="0dp" /> + </shape> + </item> + <item android:state_checked="true"> + <shape> + <stroke android:width="0.5dp" android:color="@color/white" /> + <solid android:color="@color/theme_color" /> + <corners android:radius="@dimen/radius" /> + </shape> + </item> + <item> + <shape> + <stroke android:width="0.5dp" android:color="@color/theme_color" /> + <solid android:color="@color/theme_tint_color" /> + <corners android:radius="@dimen/radius" /> + <padding android:bottom="0dp" android:left="0dp" android:right="0dp" android:top="0dp" /> + </shape> + </item> + </selector> + </item> + +</ripple> \ No newline at end of file diff --git a/app/src/main/res/drawable-v21/white_corner_border.xml b/app/src/main/res/drawable-v21/white_corner_border.xml new file mode 100644 index 0000000..bfe827c --- /dev/null +++ b/app/src/main/res/drawable-v21/white_corner_border.xml @@ -0,0 +1,38 @@ +<?xml version="1.0" encoding="utf-8"?> +<ripple xmlns:android="http://schemas.android.com/apk/res/android" + android:color="@color/enable_color" > + <item> + <selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_enabled="false"> + <shape> + <stroke android:width="0.5dp" android:color="@color/white" /> + <solid android:color="@color/enable_color" /> + <corners android:radius="@dimen/radius" /> + </shape> + </item> + <item android:state_pressed="true"> + <shape> + <solid android:color="@color/white" /> + <corners android:radius="@dimen/radius" /> + <padding android:bottom="0dp" android:left="0dp" android:right="0dp" android:top="0dp" /> + </shape> + </item> + <item android:state_checked="true"> + <shape> + <stroke android:width="0.5dp" android:color="@color/white" /> + <solid android:color="@color/theme_color" /> + <corners android:radius="@dimen/radius" /> + </shape> + </item> + <item> + <shape> + <stroke android:width="0.5dp" android:color="@color/enable_color" /> + <solid android:color="@color/white" /> + <corners android:radius="@dimen/radius" /> + <padding android:bottom="0dp" android:left="0dp" android:right="0dp" android:top="0dp" /> + </shape> + </item> + </selector> + </item> + +</ripple> \ No newline at end of file diff --git a/app/src/main/res/drawable-v24/ic_launcher_foreground.xml b/app/src/main/res/drawable-v24/ic_launcher_foreground.xml deleted file mode 100644 index 2b068d1..0000000 --- a/app/src/main/res/drawable-v24/ic_launcher_foreground.xml +++ /dev/null @@ -1,30 +0,0 @@ -<vector xmlns:android="http://schemas.android.com/apk/res/android" - xmlns:aapt="http://schemas.android.com/aapt" - android:width="108dp" - android:height="108dp" - android:viewportWidth="108" - android:viewportHeight="108"> - <path android:pathData="M31,63.928c0,0 6.4,-11 12.1,-13.1c7.2,-2.6 26,-1.4 26,-1.4l38.1,38.1L107,108.928l-32,-1L31,63.928z"> - <aapt:attr name="android:fillColor"> - <gradient - android:endX="85.84757" - android:endY="92.4963" - android:startX="42.9492" - android:startY="49.59793" - android:type="linear"> - <item - android:color="#44000000" - android:offset="0.0" /> - <item - android:color="#00000000" - android:offset="1.0" /> - </gradient> - </aapt:attr> - </path> - <path - android:fillColor="#FFFFFF" - android:fillType="nonZero" - android:pathData="M65.3,45.828l3.8,-6.6c0.2,-0.4 0.1,-0.9 -0.3,-1.1c-0.4,-0.2 -0.9,-0.1 -1.1,0.3l-3.9,6.7c-6.3,-2.8 -13.4,-2.8 -19.7,0l-3.9,-6.7c-0.2,-0.4 -0.7,-0.5 -1.1,-0.3C38.8,38.328 38.7,38.828 38.9,39.228l3.8,6.6C36.2,49.428 31.7,56.028 31,63.928h46C76.3,56.028 71.8,49.428 65.3,45.828zM43.4,57.328c-0.8,0 -1.5,-0.5 -1.8,-1.2c-0.3,-0.7 -0.1,-1.5 0.4,-2.1c0.5,-0.5 1.4,-0.7 2.1,-0.4c0.7,0.3 1.2,1 1.2,1.8C45.3,56.528 44.5,57.328 43.4,57.328L43.4,57.328zM64.6,57.328c-0.8,0 -1.5,-0.5 -1.8,-1.2s-0.1,-1.5 0.4,-2.1c0.5,-0.5 1.4,-0.7 2.1,-0.4c0.7,0.3 1.2,1 1.2,1.8C66.5,56.528 65.6,57.328 64.6,57.328L64.6,57.328z" - android:strokeWidth="1" - android:strokeColor="#00000000" /> -</vector> \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_black_circle.xml b/app/src/main/res/drawable/bg_black_circle.xml new file mode 100644 index 0000000..ee2f789 --- /dev/null +++ b/app/src/main/res/drawable/bg_black_circle.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + + <item> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/circle" /> + <solid android:color="@color/black" /> + </shape> + </item> + +</selector> \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_blue_circle.xml b/app/src/main/res/drawable/bg_blue_circle.xml new file mode 100644 index 0000000..ca2929d --- /dev/null +++ b/app/src/main/res/drawable/bg_blue_circle.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + + <item> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/circle" /> + <solid android:color="@color/ske_blue" /> + </shape> + </item> + +</selector> \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_enable_circle.xml b/app/src/main/res/drawable/bg_enable_circle.xml new file mode 100644 index 0000000..96ff587 --- /dev/null +++ b/app/src/main/res/drawable/bg_enable_circle.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + + <item> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/circle" /> + <solid android:color="@color/gray_normal" /> + </shape> + </item> + +</selector> \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_enable_circle_border.xml b/app/src/main/res/drawable/bg_enable_circle_border.xml new file mode 100644 index 0000000..7ef098c --- /dev/null +++ b/app/src/main/res/drawable/bg_enable_circle_border.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/circle" /> + <padding android:bottom="100dp" /> + <gradient + android:angle="270" android:endColor="@color/white" android:startColor="@color/white" /> + <stroke + android:width="1dp" + android:color="@color/txt_enable" /> + </shape> + </item> + +</selector> diff --git a/app/src/main/res/drawable/bg_gradient_blue.xml b/app/src/main/res/drawable/bg_gradient_blue.xml new file mode 100644 index 0000000..a26138c --- /dev/null +++ b/app/src/main/res/drawable/bg_gradient_blue.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="utf-8"?> +<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> + <item> + <shape> + <corners android:radius="5dp" /> + <gradient + android:angle="360" + android:endColor="@color/blue_sky" + android:startColor="@color/color_blue"/> + </shape> + </item> +</layer-list> \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_gradient_gray.xml b/app/src/main/res/drawable/bg_gradient_gray.xml new file mode 100644 index 0000000..46b62e0 --- /dev/null +++ b/app/src/main/res/drawable/bg_gradient_gray.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="utf-8"?> +<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> + <item > + <shape> + <corners android:radius="2.0dip" /> + <gradient + android:angle="180" + android:startColor="@color/color_gray" + android:endColor="@color/color_gray8" /> + </shape> + </item> +</layer-list> \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_num.xml b/app/src/main/res/drawable/bg_num.xml new file mode 100644 index 0000000..00d44a3 --- /dev/null +++ b/app/src/main/res/drawable/bg_num.xml @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_enabled="false"> + <shape> + <stroke android:width="0.5dp" android:color="@color/corsor_color" /> + <solid android:color="@color/cameralist_gray" /> + </shape> + </item> + <item android:state_pressed="true"> + <shape> + <solid android:color="@color/ui_content" /> + </shape> + </item> + <item android:state_focused="true"> + <shape> + <solid android:color="@color/trans_blue" /> + </shape> + </item> + <item> + <shape> + <stroke android:color="@color/cut_off_line" /> + <solid android:color="@color/white" /> + </shape> + </item> +</selector> \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_red_border_circle.xml b/app/src/main/res/drawable/bg_red_border_circle.xml new file mode 100644 index 0000000..aa71826 --- /dev/null +++ b/app/src/main/res/drawable/bg_red_border_circle.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/circle" /> + <gradient + android:angle="270" android:endColor="@color/white" android:startColor="@color/white" /> + <stroke + android:width="1dp" + android:color="@color/sign_today" /> + </shape> + </item> + +</selector> diff --git a/app/src/main/res/drawable/bg_red_circle.xml b/app/src/main/res/drawable/bg_red_circle.xml new file mode 100644 index 0000000..cda4ed7 --- /dev/null +++ b/app/src/main/res/drawable/bg_red_circle.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + + <item> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/circle" /> + <solid android:color="@color/sign_today" /> + </shape> + </item> + +</selector> \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_seekbar_progress_drawable.xml b/app/src/main/res/drawable/bg_seekbar_progress_drawable.xml new file mode 100644 index 0000000..26ed6f9 --- /dev/null +++ b/app/src/main/res/drawable/bg_seekbar_progress_drawable.xml @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="utf-8"?> +<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> + + <!-- 背景图 --> + <item android:id="@android:id/background" android:height="3dp"> + <shape> + <corners android:radius="10dp"/> + <size android:height="5dp" /> + <solid android:color="#eeeff3"/> + </shape> + </item> + + <!-- 进和能量图 --> + <item android:id="@android:id/progress" android:height="3dp"> + <clip> + <shape> + <corners android:radius="10dp"/> + <size android:height="5dp" /> + <gradient + android:endColor="#10A2F1" + android:startColor="#0079FF" /> + </shape> + </clip> + </item> + +</layer-list> \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_them_circle.xml b/app/src/main/res/drawable/bg_them_circle.xml new file mode 100644 index 0000000..2ec16ea --- /dev/null +++ b/app/src/main/res/drawable/bg_them_circle.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + + <item> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/circle" /> + <gradient + android:angle="270" android:endColor="@color/theme" android:startColor="@color/theme" /> + </shape> + </item> + +</selector> \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_theme_border.xml b/app/src/main/res/drawable/bg_theme_border.xml new file mode 100644 index 0000000..26f10b7 --- /dev/null +++ b/app/src/main/res/drawable/bg_theme_border.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/corner" /> + <gradient + android:angle="270" android:endColor="@color/white" android:startColor="@color/white" /> + <stroke + android:width="1dp" + android:color="@color/theme" /> + </shape> + </item> + +</selector> diff --git a/app/src/main/res/drawable/bg_white.xml b/app/src/main/res/drawable/bg_white.xml new file mode 100644 index 0000000..6507367 --- /dev/null +++ b/app/src/main/res/drawable/bg_white.xml @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_pressed="true"> + <shape android:shape="rectangle"> + <solid android:color="@color/gray_pressed" /> + </shape> + </item> + + <item android:state_enabled="false"> + <shape android:shape="rectangle"> + <solid android:color="@color/cut_off_line" /> + </shape> + </item> + + <item> + <shape android:shape="rectangle"> + <solid android:color="@color/white" /> + </shape> + </item> + +</selector> \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_white_circle.xml b/app/src/main/res/drawable/bg_white_circle.xml new file mode 100644 index 0000000..107489a --- /dev/null +++ b/app/src/main/res/drawable/bg_white_circle.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + + <item> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/circle" /> + <solid android:color="@color/white" /> + </shape> + </item> + +</selector> \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_white_corner.xml b/app/src/main/res/drawable/bg_white_corner.xml new file mode 100644 index 0000000..b3b373e --- /dev/null +++ b/app/src/main/res/drawable/bg_white_corner.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/corner" /> + <gradient + android:angle="270" android:endColor="@color/white" android:startColor="@color/white" /> + </shape> + </item> + +</selector> diff --git a/app/src/main/res/drawable/bg_white_corner_8.xml b/app/src/main/res/drawable/bg_white_corner_8.xml new file mode 100644 index 0000000..546740e --- /dev/null +++ b/app/src/main/res/drawable/bg_white_corner_8.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8"?> +<shape xmlns:android="http://schemas.android.com/apk/res/android"> + <solid android:color="@color/white" /> + <corners android:radius="8dp" /> +</shape> \ No newline at end of file diff --git a/app/src/main/res/drawable/calender_last.xml b/app/src/main/res/drawable/calender_last.xml new file mode 100644 index 0000000..3d04393 --- /dev/null +++ b/app/src/main/res/drawable/calender_last.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="utf-8"?> + +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_enabled="false" android:drawable="@mipmap/top_left_e" /> + <item android:state_pressed="true" android:drawable="@mipmap/top_left_e" /> + <item android:drawable="@mipmap/top_left_g" /> +</selector> diff --git a/app/src/main/res/drawable/calender_next.xml b/app/src/main/res/drawable/calender_next.xml new file mode 100644 index 0000000..408aaa4 --- /dev/null +++ b/app/src/main/res/drawable/calender_next.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="utf-8"?> + +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_enabled="false" android:drawable="@mipmap/top_right_e" /> + <item android:state_pressed="true" android:drawable="@mipmap/top_right_e" /> + <item android:drawable="@mipmap/top_right_g" /> +</selector> \ No newline at end of file diff --git a/app/src/main/res/drawable/check_selector.xml b/app/src/main/res/drawable/check_selector.xml new file mode 100644 index 0000000..b3399af --- /dev/null +++ b/app/src/main/res/drawable/check_selector.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + + <item android:drawable="@mipmap/selected" android:state_checked="true"/> + <item android:drawable="@mipmap/selected" android:state_selected="true"/> + <item android:drawable="@mipmap/select" android:state_checked="false"/> + <item android:drawable="@mipmap/select" /> + +</selector> \ No newline at end of file diff --git a/app/src/main/res/drawable/enable_corner_border.xml b/app/src/main/res/drawable/enable_corner_border.xml new file mode 100644 index 0000000..da8ae78 --- /dev/null +++ b/app/src/main/res/drawable/enable_corner_border.xml @@ -0,0 +1,33 @@ +<?xml version="1.0" encoding="utf-8"?> + +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_enabled="false"> + <shape> + <stroke android:width="0.5dp" android:color="@color/white" /> + <solid android:color="@color/enable_color" /> + <corners android:radius="@dimen/radius" /> + </shape> + </item> + <item android:state_pressed="true"> + <shape> + <solid android:color="@color/white" /> + <corners android:radius="@dimen/radius" /> + <padding android:bottom="0dp" android:left="0dp" android:right="0dp" android:top="0dp" /> + </shape> + </item> + <item android:state_checked="true"> + <shape> + <stroke android:width="0.5dp" android:color="@color/white" /> + <solid android:color="@color/theme_color" /> + <corners android:radius="@dimen/radius" /> + </shape> + </item> + <item> + <shape> + <stroke android:width="0.5dp" android:color="@color/white" /> + <solid android:color="@color/enable_color" /> + <corners android:radius="@dimen/radius" /> + <padding android:bottom="0dp" android:left="0dp" android:right="0dp" android:top="0dp" /> + </shape> + </item> +</selector> \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_dashboard_black_24dp.xml b/app/src/main/res/drawable/ic_dashboard_black_24dp.xml deleted file mode 100644 index 663d572..0000000 --- a/app/src/main/res/drawable/ic_dashboard_black_24dp.xml +++ /dev/null @@ -1,9 +0,0 @@ -<vector xmlns:android="http://schemas.android.com/apk/res/android" - android:width="24dp" - android:height="24dp" - android:viewportWidth="24.0" - android:viewportHeight="24.0"> - <path - android:fillColor="#FF000000" - android:pathData="M3,13h8L11,3L3,3v10zM3,21h8v-6L3,15v6zM13,21h8L21,11h-8v10zM13,3v6h8L21,3h-8z"/> -</vector> diff --git a/app/src/main/res/drawable/ic_home_black_24dp.xml b/app/src/main/res/drawable/ic_home_black_24dp.xml deleted file mode 100644 index 70fb291..0000000 --- a/app/src/main/res/drawable/ic_home_black_24dp.xml +++ /dev/null @@ -1,9 +0,0 @@ -<vector xmlns:android="http://schemas.android.com/apk/res/android" - android:width="24dp" - android:height="24dp" - android:viewportWidth="24.0" - android:viewportHeight="24.0"> - <path - android:fillColor="#FF000000" - android:pathData="M10,20v-6h4v6h5v-8h3L12,3 2,12h3v8z"/> -</vector> diff --git a/app/src/main/res/drawable/ic_launcher_background.xml b/app/src/main/res/drawable/ic_launcher_background.xml index 07d5da9..e01dd84 100644 --- a/app/src/main/res/drawable/ic_launcher_background.xml +++ b/app/src/main/res/drawable/ic_launcher_background.xml @@ -2,169 +2,169 @@ <vector xmlns:android="http://schemas.android.com/apk/res/android" android:width="108dp" android:height="108dp" - android:viewportWidth="108" - android:viewportHeight="108"> + android:viewportHeight="108" + android:viewportWidth="108"> <path - android:fillColor="#3DDC84" + android:fillColor="#008577" android:pathData="M0,0h108v108h-108z" /> <path android:fillColor="#00000000" android:pathData="M9,0L9,108" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M19,0L19,108" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M29,0L29,108" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M39,0L39,108" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M49,0L49,108" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M59,0L59,108" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M69,0L69,108" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M79,0L79,108" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M89,0L89,108" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M99,0L99,108" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M0,9L108,9" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M0,19L108,19" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M0,29L108,29" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M0,39L108,39" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M0,49L108,49" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M0,59L108,59" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M0,69L108,69" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M0,79L108,79" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M0,89L108,89" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M0,99L108,99" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M19,29L89,29" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M19,39L89,39" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M19,49L89,49" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M19,59L89,59" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M19,69L89,69" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M19,79L89,79" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M29,19L29,89" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M39,19L39,89" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M49,19L49,89" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M59,19L59,89" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M69,19L69,89" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> <path android:fillColor="#00000000" android:pathData="M79,19L79,89" - android:strokeWidth="0.8" - android:strokeColor="#33FFFFFF" /> + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> </vector> diff --git a/app/src/main/res/drawable/ic_notifications_black_24dp.xml b/app/src/main/res/drawable/ic_notifications_black_24dp.xml deleted file mode 100644 index 7009a67..0000000 --- a/app/src/main/res/drawable/ic_notifications_black_24dp.xml +++ /dev/null @@ -1,9 +0,0 @@ -<vector xmlns:android="http://schemas.android.com/apk/res/android" - android:width="24dp" - android:height="24dp" - android:viewportWidth="24.0" - android:viewportHeight="24.0"> - <path - android:fillColor="#FF000000" - android:pathData="M12,22c1.1,0 2,-0.9 2,-2h-4c0,1.1 0.89,2 2,2zM18,16v-5c0,-3.07 -1.64,-5.64 -4.5,-6.32L13.5,4c0,-0.83 -0.67,-1.5 -1.5,-1.5s-1.5,0.67 -1.5,1.5v0.68C7.63,5.36 6,7.92 6,11v5l-2,2v1h16v-1l-2,-2z"/> -</vector> diff --git a/app/src/main/res/drawable/item_check_pass.xml b/app/src/main/res/drawable/item_check_pass.xml new file mode 100644 index 0000000..6c58e29 --- /dev/null +++ b/app/src/main/res/drawable/item_check_pass.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + + <item android:drawable="@drawable/bg_black_circle" android:state_checked="true"/> + <item android:drawable="@drawable/bg_white_circle" android:state_checked="false"/> + +</selector> \ No newline at end of file diff --git a/app/src/main/res/drawable/picture_icon_delete.png b/app/src/main/res/drawable/picture_icon_delete.png new file mode 100644 index 0000000..65c21e4 --- /dev/null +++ b/app/src/main/res/drawable/picture_icon_delete.png Binary files differ diff --git a/app/src/main/res/drawable/picture_icon_shadow_bg.png b/app/src/main/res/drawable/picture_icon_shadow_bg.png new file mode 100644 index 0000000..440cbb3 --- /dev/null +++ b/app/src/main/res/drawable/picture_icon_shadow_bg.png Binary files differ diff --git a/app/src/main/res/drawable/picture_icon_video.png b/app/src/main/res/drawable/picture_icon_video.png new file mode 100644 index 0000000..86e6d48 --- /dev/null +++ b/app/src/main/res/drawable/picture_icon_video.png Binary files differ diff --git a/app/src/main/res/drawable/theme_corner_border.xml b/app/src/main/res/drawable/theme_corner_border.xml new file mode 100644 index 0000000..84be09e --- /dev/null +++ b/app/src/main/res/drawable/theme_corner_border.xml @@ -0,0 +1,32 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_enabled="false"> + <shape> + <stroke android:width="0.5dp" android:color="@color/white" /> + <solid android:color="@color/enable_color" /> + <corners android:radius="@dimen/radius" /> + </shape> + </item> + <item android:state_pressed="true"> + <shape> + <solid android:color="@color/white" /> + <corners android:radius="@dimen/radius" /> + <padding android:bottom="0dp" android:left="0dp" android:right="0dp" android:top="0dp" /> + </shape> + </item> + <item android:state_checked="true"> + <shape> + <stroke android:width="0.5dp" android:color="@color/white" /> + <solid android:color="@color/theme_color" /> + <corners android:radius="@dimen/radius" /> + </shape> + </item> + <item> + <shape> + <stroke android:width="0.5dp" android:color="@color/theme_color" /> + <solid android:color="@color/theme_tint_color" /> + <corners android:radius="@dimen/radius" /> + <padding android:bottom="0dp" android:left="0dp" android:right="0dp" android:top="0dp" /> + </shape> + </item> +</selector> \ No newline at end of file diff --git a/app/src/main/res/drawable/white_corner_border.xml b/app/src/main/res/drawable/white_corner_border.xml new file mode 100644 index 0000000..072bce2 --- /dev/null +++ b/app/src/main/res/drawable/white_corner_border.xml @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_enabled="false"> + <shape> + <stroke android:width="0.5dp" android:color="@color/white" /> + <solid android:color="@color/enable_color" /> + <corners android:radius="@dimen/radius" /> + </shape> + </item> + <item android:state_pressed="true"> + <shape> + <stroke android:width="0.5dp" android:color="@color/enable_color" /> + <solid android:color="@color/press_color" /> + <corners android:radius="@dimen/radius" /> + </shape> + </item> + <item android:state_checked="true"> + <shape> + <stroke android:width="0.5dp" android:color="@color/white" /> + <solid android:color="@color/theme_color" /> + <corners android:radius="@dimen/radius" /> + </shape> + </item> + <item> + <shape> + <stroke android:width="0.5dp" android:color="@color/enable_color" /> + <solid android:color="@color/white" /> + <corners android:radius="@dimen/radius" /> + </shape> + </item> +</selector> \ No newline at end of file diff --git a/app/src/main/res/layout/activity_splash.xml b/app/src/main/res/layout/activity_splash.xml new file mode 100644 index 0000000..70a0b97 --- /dev/null +++ b/app/src/main/res/layout/activity_splash.xml @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="utf-8"?> +<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:tools="http://schemas.android.com/tools" + android:id="@+id/rel_root" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:orientation="vertical" > + + <ImageView + android:layout_width="match_parent" + android:layout_height="match_parent" + android:src="@mipmap/welcom" + android:scaleType="centerCrop" + /> + + <FrameLayout + android:id="@+id/splash_ad_container" + android:layout_width="match_parent" + android:layout_height="match_parent" /> + +</RelativeLayout> \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_dashboard.xml b/app/src/main/res/layout/fragment_dashboard.xml index 0ef53b9..53e0e0c 100644 --- a/app/src/main/res/layout/fragment_dashboard.xml +++ b/app/src/main/res/layout/fragment_dashboard.xml @@ -5,7 +5,7 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" - tools:context=".ui.dashboard.DashboardFragment" > + tools:context=".ui.main.dashboard.DashboardFragment" > <TextView android:id="@+id/text_dashboard" diff --git a/app/src/main/res/layout/fragment_home.xml b/app/src/main/res/layout/fragment_home.xml index 7ecfe18..02db4bd 100644 --- a/app/src/main/res/layout/fragment_home.xml +++ b/app/src/main/res/layout/fragment_home.xml @@ -5,7 +5,7 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" - tools:context=".ui.home.HomeFragment" > + tools:context=".ui.main.home.HomeFragment" > <TextView android:id="@+id/text_home" diff --git a/app/src/main/res/layout/fragment_notifications.xml b/app/src/main/res/layout/fragment_notifications.xml index 01a3222..448150a 100644 --- a/app/src/main/res/layout/fragment_notifications.xml +++ b/app/src/main/res/layout/fragment_notifications.xml @@ -5,7 +5,7 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" - tools:context=".ui.notifications.NotificationsFragment" > + tools:context=".ui.main.notifications.NotificationsFragment" > <TextView android:id="@+id/text_notifications" diff --git a/app/src/main/res/layout/item_btn_text_with_text.xml b/app/src/main/res/layout/item_btn_text_with_text.xml new file mode 100644 index 0000000..a28929f --- /dev/null +++ b/app/src/main/res/layout/item_btn_text_with_text.xml @@ -0,0 +1,74 @@ +<?xml version="1.0" encoding="utf-8"?> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:background="@drawable/bg_white" + android:orientation="vertical"> + + <LinearLayout + android:id="@+id/lin_item_text" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:layout_weight="1" + android:background="@drawable/bg_white" + android:clickable="false" + android:gravity="center_vertical" + android:orientation="horizontal" > + + <TextView + android:id="@+id/txt_left" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:gravity="center_vertical" + android:text="标题" + android:textColor="@color/black" + android:textSize="17sp" /> + + <TextView + android:id="@+id/txt_red_point" + android:layout_width="20dp" + android:layout_height="20dp" + android:layout_marginLeft="10dp" + android:background="@drawable/btn_circle_red" + android:gravity="center" + android:text="1" + android:textColor="@color/white" + android:visibility="gone"/> + + <RelativeLayout + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="1.0"> + <TextView + android:id="@+id/txt_right" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:drawablePadding="5dp" + android:drawableRight="@mipmap/arrow_right" + android:gravity="center_vertical|right" + android:maxLines="1" + android:text="" + android:textColor="@color/txt_enable" + android:textSize="17sp" /> + + <TextView + android:id="@+id/txt_right_red_point" + android:layout_width="10dp" + android:layout_height="10dp" + android:layout_alignParentRight="true" + android:layout_centerVertical="true" + android:layout_marginRight="10dp" + android:background="@drawable/btn_circle_red" + android:visibility="gone" + android:textColor="@color/white" /> + </RelativeLayout> + </LinearLayout> + + + <View + android:id="@+id/view_divider" + android:layout_width="match_parent" + android:layout_height="0.5dp" + android:background="@color/color_gray" /> + +</LinearLayout> \ No newline at end of file diff --git a/app/src/main/res/menu/bottom_nav_menu.xml b/app/src/main/res/menu/bottom_nav_menu.xml index 52321c6..fb25685 100644 --- a/app/src/main/res/menu/bottom_nav_menu.xml +++ b/app/src/main/res/menu/bottom_nav_menu.xml @@ -1,19 +1,19 @@ <?xml version="1.0" encoding="utf-8"?> -<menu xmlns:android="http://schemas.android.com/apk/res/android"> +<menu xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:app="http://schemas.android.com/apk/res-auto"> <item - android:id="@+id/navigation_home" - android:icon="@drawable/ic_home_black_24dp" - android:title="@string/title_home"/> - + android:id="@+id/nav_msg" + android:icon="@mipmap/icon_news" + android:title="资讯" /> <item - android:id="@+id/navigation_dashboard" - android:icon="@drawable/ic_dashboard_black_24dp" - android:title="@string/title_dashboard"/> - + android:id="@+id/nav_service" + android:icon="@mipmap/icon_home" + android:title="服务" /> <item - android:id="@+id/navigation_notifications" - android:icon="@drawable/ic_notifications_black_24dp" - android:title="@string/title_notifications"/> + android:id="@+id/nav_mine" + android:icon="@mipmap/icon_mine" + android:title="我的" /> + </menu> \ No newline at end of file diff --git a/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml deleted file mode 100644 index eca70cf..0000000 --- a/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml +++ /dev/null @@ -1,5 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android"> - <background android:drawable="@drawable/ic_launcher_background" /> - <foreground android:drawable="@drawable/ic_launcher_foreground" /> -</adaptive-icon> \ No newline at end of file diff --git a/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml deleted file mode 100644 index eca70cf..0000000 --- a/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml +++ /dev/null @@ -1,5 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android"> - <background android:drawable="@drawable/ic_launcher_background" /> - <foreground android:drawable="@drawable/ic_launcher_foreground" /> -</adaptive-icon> \ No newline at end of file diff --git a/app/src/main/res/mipmap-hdpi/arrow_bottom_black.png b/app/src/main/res/mipmap-hdpi/arrow_bottom_black.png new file mode 100644 index 0000000..ed993f3 --- /dev/null +++ b/app/src/main/res/mipmap-hdpi/arrow_bottom_black.png Binary files differ diff --git a/app/src/main/res/mipmap-hdpi/arrow_bottom_white.png b/app/src/main/res/mipmap-hdpi/arrow_bottom_white.png new file mode 100644 index 0000000..6c24766 --- /dev/null +++ b/app/src/main/res/mipmap-hdpi/arrow_bottom_white.png Binary files differ diff --git a/app/src/main/res/mipmap-hdpi/arrow_top_black.png b/app/src/main/res/mipmap-hdpi/arrow_top_black.png new file mode 100644 index 0000000..35e3b42 --- /dev/null +++ b/app/src/main/res/mipmap-hdpi/arrow_top_black.png Binary files differ diff --git a/app/src/main/res/mipmap-hdpi/arrow_top_white.png b/app/src/main/res/mipmap-hdpi/arrow_top_white.png new file mode 100644 index 0000000..37552cd --- /dev/null +++ b/app/src/main/res/mipmap-hdpi/arrow_top_white.png Binary files differ diff --git a/app/src/main/res/mipmap-hdpi/bg_seekbar_display1.png b/app/src/main/res/mipmap-hdpi/bg_seekbar_display1.png new file mode 100644 index 0000000..404751b --- /dev/null +++ b/app/src/main/res/mipmap-hdpi/bg_seekbar_display1.png Binary files differ diff --git a/app/src/main/res/mipmap-hdpi/bg_seekbar_display2.png b/app/src/main/res/mipmap-hdpi/bg_seekbar_display2.png new file mode 100644 index 0000000..0e312f6 --- /dev/null +++ b/app/src/main/res/mipmap-hdpi/bg_seekbar_display2.png Binary files differ diff --git a/app/src/main/res/mipmap-hdpi/data_null.png b/app/src/main/res/mipmap-hdpi/data_null.png new file mode 100644 index 0000000..e81284e --- /dev/null +++ b/app/src/main/res/mipmap-hdpi/data_null.png Binary files differ diff --git a/app/src/main/res/mipmap-hdpi/ic_add_black_48dp.png b/app/src/main/res/mipmap-hdpi/ic_add_black_48dp.png new file mode 100644 index 0000000..a633259 --- /dev/null +++ b/app/src/main/res/mipmap-hdpi/ic_add_black_48dp.png Binary files differ diff --git a/app/src/main/res/mipmap-hdpi/ic_arrow_back_black_24dp.png b/app/src/main/res/mipmap-hdpi/ic_arrow_back_black_24dp.png new file mode 100644 index 0000000..baaf7d9 --- /dev/null +++ b/app/src/main/res/mipmap-hdpi/ic_arrow_back_black_24dp.png Binary files differ diff --git a/app/src/main/res/mipmap-hdpi/ic_arrow_back_white_24dp.png b/app/src/main/res/mipmap-hdpi/ic_arrow_back_white_24dp.png new file mode 100644 index 0000000..5fa4948 --- /dev/null +++ b/app/src/main/res/mipmap-hdpi/ic_arrow_back_white_24dp.png Binary files differ diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher.webp b/app/src/main/res/mipmap-hdpi/ic_launcher.webp deleted file mode 100644 index c209e78..0000000 --- a/app/src/main/res/mipmap-hdpi/ic_launcher.webp +++ /dev/null Binary files differ diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp b/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp deleted file mode 100644 index b2dfe3d..0000000 --- a/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp +++ /dev/null Binary files differ diff --git a/app/src/main/res/mipmap-hdpi/ic_stay_primary_landscape_black_48dp.png b/app/src/main/res/mipmap-hdpi/ic_stay_primary_landscape_black_48dp.png new file mode 100644 index 0000000..c1212ce --- /dev/null +++ b/app/src/main/res/mipmap-hdpi/ic_stay_primary_landscape_black_48dp.png Binary files differ diff --git a/app/src/main/res/mipmap-hdpi/ic_stay_primary_portrait_black_48dp.png b/app/src/main/res/mipmap-hdpi/ic_stay_primary_portrait_black_48dp.png new file mode 100644 index 0000000..c50d631 --- /dev/null +++ b/app/src/main/res/mipmap-hdpi/ic_stay_primary_portrait_black_48dp.png Binary files differ diff --git a/app/src/main/res/mipmap-hdpi/icon_delete.png b/app/src/main/res/mipmap-hdpi/icon_delete.png new file mode 100644 index 0000000..cf0c66f --- /dev/null +++ b/app/src/main/res/mipmap-hdpi/icon_delete.png Binary files differ diff --git a/app/src/main/res/mipmap-hdpi/icon_more_hor_black.png b/app/src/main/res/mipmap-hdpi/icon_more_hor_black.png new file mode 100644 index 0000000..e68cfdf --- /dev/null +++ b/app/src/main/res/mipmap-hdpi/icon_more_hor_black.png Binary files differ diff --git a/app/src/main/res/mipmap-hdpi/icon_more_hor_white.png b/app/src/main/res/mipmap-hdpi/icon_more_hor_white.png new file mode 100644 index 0000000..c84cbcc --- /dev/null +++ b/app/src/main/res/mipmap-hdpi/icon_more_hor_white.png Binary files differ diff --git a/app/src/main/res/mipmap-hdpi/icon_more_vert_black.png b/app/src/main/res/mipmap-hdpi/icon_more_vert_black.png new file mode 100644 index 0000000..f22e713 --- /dev/null +++ b/app/src/main/res/mipmap-hdpi/icon_more_vert_black.png Binary files differ diff --git a/app/src/main/res/mipmap-hdpi/icon_more_vert_white.png b/app/src/main/res/mipmap-hdpi/icon_more_vert_white.png new file mode 100644 index 0000000..fdc4a5a --- /dev/null +++ b/app/src/main/res/mipmap-hdpi/icon_more_vert_white.png Binary files differ diff --git a/app/src/main/res/mipmap-hdpi/icon_seekbar_thumb.png b/app/src/main/res/mipmap-hdpi/icon_seekbar_thumb.png new file mode 100644 index 0000000..ad67fa0 --- /dev/null +++ b/app/src/main/res/mipmap-hdpi/icon_seekbar_thumb.png Binary files differ diff --git a/app/src/main/res/mipmap-hdpi/icon_white_mine.png b/app/src/main/res/mipmap-hdpi/icon_white_mine.png new file mode 100644 index 0000000..ca9246b --- /dev/null +++ b/app/src/main/res/mipmap-hdpi/icon_white_mine.png Binary files differ diff --git a/app/src/main/res/mipmap-hdpi/icon_white_setting.png b/app/src/main/res/mipmap-hdpi/icon_white_setting.png new file mode 100644 index 0000000..d3ee447 --- /dev/null +++ b/app/src/main/res/mipmap-hdpi/icon_white_setting.png Binary files differ diff --git a/app/src/main/res/mipmap-mdpi/arrow_bottom_black.png b/app/src/main/res/mipmap-mdpi/arrow_bottom_black.png new file mode 100644 index 0000000..73fc3b4 --- /dev/null +++ b/app/src/main/res/mipmap-mdpi/arrow_bottom_black.png Binary files differ diff --git a/app/src/main/res/mipmap-mdpi/arrow_bottom_white.png b/app/src/main/res/mipmap-mdpi/arrow_bottom_white.png new file mode 100644 index 0000000..61e551f --- /dev/null +++ b/app/src/main/res/mipmap-mdpi/arrow_bottom_white.png Binary files differ diff --git a/app/src/main/res/mipmap-mdpi/arrow_top_black.png b/app/src/main/res/mipmap-mdpi/arrow_top_black.png new file mode 100644 index 0000000..a5ab2c5 --- /dev/null +++ b/app/src/main/res/mipmap-mdpi/arrow_top_black.png Binary files differ diff --git a/app/src/main/res/mipmap-mdpi/arrow_top_white.png b/app/src/main/res/mipmap-mdpi/arrow_top_white.png new file mode 100644 index 0000000..cfc34a3 --- /dev/null +++ b/app/src/main/res/mipmap-mdpi/arrow_top_white.png Binary files differ diff --git a/app/src/main/res/mipmap-mdpi/data_null.png b/app/src/main/res/mipmap-mdpi/data_null.png new file mode 100644 index 0000000..694c961 --- /dev/null +++ b/app/src/main/res/mipmap-mdpi/data_null.png Binary files differ diff --git a/app/src/main/res/mipmap-mdpi/ic_add_black_48dp.png b/app/src/main/res/mipmap-mdpi/ic_add_black_48dp.png new file mode 100644 index 0000000..1ea8dd9 --- /dev/null +++ b/app/src/main/res/mipmap-mdpi/ic_add_black_48dp.png Binary files differ diff --git a/app/src/main/res/mipmap-mdpi/ic_arrow_back_black_24dp.png b/app/src/main/res/mipmap-mdpi/ic_arrow_back_black_24dp.png new file mode 100644 index 0000000..425c884 --- /dev/null +++ b/app/src/main/res/mipmap-mdpi/ic_arrow_back_black_24dp.png Binary files differ diff --git a/app/src/main/res/mipmap-mdpi/ic_arrow_back_white_24dp.png b/app/src/main/res/mipmap-mdpi/ic_arrow_back_white_24dp.png new file mode 100644 index 0000000..9e662f6 --- /dev/null +++ b/app/src/main/res/mipmap-mdpi/ic_arrow_back_white_24dp.png Binary files differ diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher.webp b/app/src/main/res/mipmap-mdpi/ic_launcher.webp deleted file mode 100644 index 4f0f1d6..0000000 --- a/app/src/main/res/mipmap-mdpi/ic_launcher.webp +++ /dev/null Binary files differ diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp b/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp deleted file mode 100644 index 62b611d..0000000 --- a/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp +++ /dev/null Binary files differ diff --git a/app/src/main/res/mipmap-mdpi/ic_stay_primary_landscape_black_48dp.png b/app/src/main/res/mipmap-mdpi/ic_stay_primary_landscape_black_48dp.png new file mode 100644 index 0000000..8160215 --- /dev/null +++ b/app/src/main/res/mipmap-mdpi/ic_stay_primary_landscape_black_48dp.png Binary files differ diff --git a/app/src/main/res/mipmap-mdpi/ic_stay_primary_portrait_black_48dp.png b/app/src/main/res/mipmap-mdpi/ic_stay_primary_portrait_black_48dp.png new file mode 100644 index 0000000..2e81a7a --- /dev/null +++ b/app/src/main/res/mipmap-mdpi/ic_stay_primary_portrait_black_48dp.png Binary files differ diff --git a/app/src/main/res/mipmap-mdpi/icon_more_hor_black.png b/app/src/main/res/mipmap-mdpi/icon_more_hor_black.png new file mode 100644 index 0000000..ce72963 --- /dev/null +++ b/app/src/main/res/mipmap-mdpi/icon_more_hor_black.png Binary files differ diff --git a/app/src/main/res/mipmap-mdpi/icon_more_hor_white.png b/app/src/main/res/mipmap-mdpi/icon_more_hor_white.png new file mode 100644 index 0000000..28e4a99 --- /dev/null +++ b/app/src/main/res/mipmap-mdpi/icon_more_hor_white.png Binary files differ diff --git a/app/src/main/res/mipmap-mdpi/icon_more_vert_black.png b/app/src/main/res/mipmap-mdpi/icon_more_vert_black.png new file mode 100644 index 0000000..991ad6c --- /dev/null +++ b/app/src/main/res/mipmap-mdpi/icon_more_vert_black.png Binary files differ diff --git a/app/src/main/res/mipmap-mdpi/icon_more_vert_white.png b/app/src/main/res/mipmap-mdpi/icon_more_vert_white.png new file mode 100644 index 0000000..1d8ad18 --- /dev/null +++ b/app/src/main/res/mipmap-mdpi/icon_more_vert_white.png Binary files differ diff --git a/app/src/main/res/mipmap-mdpi/icon_white_mine.png b/app/src/main/res/mipmap-mdpi/icon_white_mine.png new file mode 100644 index 0000000..ec9e668 --- /dev/null +++ b/app/src/main/res/mipmap-mdpi/icon_white_mine.png Binary files differ diff --git a/app/src/main/res/mipmap-mdpi/icon_white_setting.png b/app/src/main/res/mipmap-mdpi/icon_white_setting.png new file mode 100644 index 0000000..c871176 --- /dev/null +++ b/app/src/main/res/mipmap-mdpi/icon_white_setting.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/alipay.png b/app/src/main/res/mipmap-xhdpi/alipay.png new file mode 100644 index 0000000..8ec922f --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/alipay.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/arrow_bottom_black.png b/app/src/main/res/mipmap-xhdpi/arrow_bottom_black.png new file mode 100644 index 0000000..45d30d9 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/arrow_bottom_black.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/arrow_bottom_white.png b/app/src/main/res/mipmap-xhdpi/arrow_bottom_white.png new file mode 100644 index 0000000..c0e60c2 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/arrow_bottom_white.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/arrow_right.png b/app/src/main/res/mipmap-xhdpi/arrow_right.png new file mode 100644 index 0000000..175a9e3 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/arrow_right.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/arrow_top_black.png b/app/src/main/res/mipmap-xhdpi/arrow_top_black.png new file mode 100644 index 0000000..47c7b52 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/arrow_top_black.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/arrow_top_white.png b/app/src/main/res/mipmap-xhdpi/arrow_top_white.png new file mode 100644 index 0000000..55875dd --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/arrow_top_white.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/birth.png b/app/src/main/res/mipmap-xhdpi/birth.png new file mode 100644 index 0000000..597c659 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/birth.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/coin.png b/app/src/main/res/mipmap-xhdpi/coin.png new file mode 100644 index 0000000..431733b --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/coin.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/coin_d.png b/app/src/main/res/mipmap-xhdpi/coin_d.png new file mode 100644 index 0000000..81ce863 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/coin_d.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/data_null.png b/app/src/main/res/mipmap-xhdpi/data_null.png new file mode 100644 index 0000000..2b8b004 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/data_null.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/default_head.png b/app/src/main/res/mipmap-xhdpi/default_head.png new file mode 100644 index 0000000..9f10420 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/default_head.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/ic_add_black_48dp.png b/app/src/main/res/mipmap-xhdpi/ic_add_black_48dp.png new file mode 100644 index 0000000..43bc427 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/ic_add_black_48dp.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/ic_arrow_back_black_24dp.png b/app/src/main/res/mipmap-xhdpi/ic_arrow_back_black_24dp.png new file mode 100644 index 0000000..ea37677 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/ic_arrow_back_black_24dp.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/ic_arrow_back_white_24dp.png b/app/src/main/res/mipmap-xhdpi/ic_arrow_back_white_24dp.png new file mode 100644 index 0000000..addbfc8 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/ic_arrow_back_white_24dp.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/ic_delete.png b/app/src/main/res/mipmap-xhdpi/ic_delete.png new file mode 100644 index 0000000..38c4ec0 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/ic_delete.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/ic_launcher.webp b/app/src/main/res/mipmap-xhdpi/ic_launcher.webp deleted file mode 100644 index 948a307..0000000 --- a/app/src/main/res/mipmap-xhdpi/ic_launcher.webp +++ /dev/null Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp b/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp deleted file mode 100644 index 1b9a695..0000000 --- a/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp +++ /dev/null Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/ic_stay_primary_landscape_black_48dp.png b/app/src/main/res/mipmap-xhdpi/ic_stay_primary_landscape_black_48dp.png new file mode 100644 index 0000000..f7f2890 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/ic_stay_primary_landscape_black_48dp.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/ic_stay_primary_portrait_black_48dp.png b/app/src/main/res/mipmap-xhdpi/ic_stay_primary_portrait_black_48dp.png new file mode 100644 index 0000000..3edee57 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/ic_stay_primary_portrait_black_48dp.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/icon_coin.png b/app/src/main/res/mipmap-xhdpi/icon_coin.png new file mode 100644 index 0000000..711297b --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/icon_coin.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/icon_delete.png b/app/src/main/res/mipmap-xhdpi/icon_delete.png new file mode 100644 index 0000000..d4c7bb0 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/icon_delete.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/icon_more_hor_black.png b/app/src/main/res/mipmap-xhdpi/icon_more_hor_black.png new file mode 100644 index 0000000..7dc4e13 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/icon_more_hor_black.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/icon_more_hor_white.png b/app/src/main/res/mipmap-xhdpi/icon_more_hor_white.png new file mode 100644 index 0000000..4e4f883 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/icon_more_hor_white.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/icon_more_vert_black.png b/app/src/main/res/mipmap-xhdpi/icon_more_vert_black.png new file mode 100644 index 0000000..0db5dc3 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/icon_more_vert_black.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/icon_more_vert_white.png b/app/src/main/res/mipmap-xhdpi/icon_more_vert_white.png new file mode 100644 index 0000000..1b04eda --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/icon_more_vert_white.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/icon_white_back.png b/app/src/main/res/mipmap-xhdpi/icon_white_back.png new file mode 100644 index 0000000..8f3faab --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/icon_white_back.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/icon_white_mine.png b/app/src/main/res/mipmap-xhdpi/icon_white_mine.png new file mode 100644 index 0000000..b60729a --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/icon_white_mine.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/icon_white_setting.png b/app/src/main/res/mipmap-xhdpi/icon_white_setting.png new file mode 100644 index 0000000..009d6b7 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/icon_white_setting.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/location_dark.png b/app/src/main/res/mipmap-xhdpi/location_dark.png new file mode 100644 index 0000000..47f0a52 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/location_dark.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/location_e.png b/app/src/main/res/mipmap-xhdpi/location_e.png new file mode 100644 index 0000000..96a91b0 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/location_e.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/select.png b/app/src/main/res/mipmap-xhdpi/select.png new file mode 100644 index 0000000..3f1e2c8 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/select.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/selected.png b/app/src/main/res/mipmap-xhdpi/selected.png new file mode 100644 index 0000000..11c89ac --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/selected.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/sign.png b/app/src/main/res/mipmap-xhdpi/sign.png new file mode 100644 index 0000000..f8a8a58 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/sign.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/top_left_e.png b/app/src/main/res/mipmap-xhdpi/top_left_e.png new file mode 100644 index 0000000..529c916 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/top_left_e.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/top_left_g.png b/app/src/main/res/mipmap-xhdpi/top_left_g.png new file mode 100644 index 0000000..da510b0 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/top_left_g.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/top_right_e.png b/app/src/main/res/mipmap-xhdpi/top_right_e.png new file mode 100644 index 0000000..6d4e6ef --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/top_right_e.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/top_right_g.png b/app/src/main/res/mipmap-xhdpi/top_right_g.png new file mode 100644 index 0000000..c337901 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/top_right_g.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/user_back.png b/app/src/main/res/mipmap-xhdpi/user_back.png new file mode 100644 index 0000000..ff396ea --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/user_back.png Binary files differ diff --git a/app/src/main/res/mipmap-xhdpi/weipay.png b/app/src/main/res/mipmap-xhdpi/weipay.png new file mode 100644 index 0000000..ebffc5d --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/weipay.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/alipay.png b/app/src/main/res/mipmap-xxhdpi/alipay.png new file mode 100644 index 0000000..2c7dc96 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/alipay.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/app_icon.png b/app/src/main/res/mipmap-xxhdpi/app_icon.png new file mode 100644 index 0000000..a3b089e --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/app_icon.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/arrow_bottom_black.png b/app/src/main/res/mipmap-xxhdpi/arrow_bottom_black.png new file mode 100644 index 0000000..aadd04a --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/arrow_bottom_black.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/arrow_bottom_white.png b/app/src/main/res/mipmap-xxhdpi/arrow_bottom_white.png new file mode 100644 index 0000000..f00aa8b --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/arrow_bottom_white.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/arrow_right.png b/app/src/main/res/mipmap-xxhdpi/arrow_right.png new file mode 100644 index 0000000..79df616 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/arrow_right.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/arrow_top_black.png b/app/src/main/res/mipmap-xxhdpi/arrow_top_black.png new file mode 100644 index 0000000..0470e3f --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/arrow_top_black.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/arrow_top_white.png b/app/src/main/res/mipmap-xxhdpi/arrow_top_white.png new file mode 100644 index 0000000..a74849a --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/arrow_top_white.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/bg_bozhong.jpg b/app/src/main/res/mipmap-xxhdpi/bg_bozhong.jpg new file mode 100644 index 0000000..c92e193 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/bg_bozhong.jpg Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/bg_uav.jpg b/app/src/main/res/mipmap-xxhdpi/bg_uav.jpg new file mode 100644 index 0000000..09399f8 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/bg_uav.jpg Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/bg_xiaomai.jpg b/app/src/main/res/mipmap-xxhdpi/bg_xiaomai.jpg new file mode 100644 index 0000000..87ad6f9 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/bg_xiaomai.jpg Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/bg_yumi.jpg b/app/src/main/res/mipmap-xxhdpi/bg_yumi.jpg new file mode 100644 index 0000000..e731cc5 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/bg_yumi.jpg Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/birth.png b/app/src/main/res/mipmap-xxhdpi/birth.png new file mode 100644 index 0000000..ea51174 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/birth.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/data_null.png b/app/src/main/res/mipmap-xxhdpi/data_null.png new file mode 100644 index 0000000..e0087e3 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/data_null.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/default_head.png b/app/src/main/res/mipmap-xxhdpi/default_head.png new file mode 100644 index 0000000..6738614 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/default_head.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/female.png b/app/src/main/res/mipmap-xxhdpi/female.png new file mode 100644 index 0000000..9427631 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/female.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/ic_add_black_48dp.png b/app/src/main/res/mipmap-xxhdpi/ic_add_black_48dp.png new file mode 100644 index 0000000..b94d1c9 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/ic_add_black_48dp.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/ic_arrow_back_black_24dp.png b/app/src/main/res/mipmap-xxhdpi/ic_arrow_back_black_24dp.png new file mode 100644 index 0000000..4162ffc --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/ic_arrow_back_black_24dp.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/ic_arrow_back_white_24dp.png b/app/src/main/res/mipmap-xxhdpi/ic_arrow_back_white_24dp.png new file mode 100644 index 0000000..4057cc5 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/ic_arrow_back_white_24dp.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp b/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp deleted file mode 100644 index 28d4b77..0000000 --- a/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp +++ /dev/null Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp b/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp deleted file mode 100644 index 9287f50..0000000 --- a/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp +++ /dev/null Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/ic_stay_primary_landscape_black_48dp.png b/app/src/main/res/mipmap-xxhdpi/ic_stay_primary_landscape_black_48dp.png new file mode 100644 index 0000000..54ef324 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/ic_stay_primary_landscape_black_48dp.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/ic_stay_primary_portrait_black_48dp.png b/app/src/main/res/mipmap-xxhdpi/ic_stay_primary_portrait_black_48dp.png new file mode 100644 index 0000000..3f0ab7f --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/ic_stay_primary_portrait_black_48dp.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/icon_coin.png b/app/src/main/res/mipmap-xxhdpi/icon_coin.png new file mode 100644 index 0000000..f62f2e7 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/icon_coin.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/icon_more_hor_black.png b/app/src/main/res/mipmap-xxhdpi/icon_more_hor_black.png new file mode 100644 index 0000000..fc71097 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/icon_more_hor_black.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/icon_more_hor_white.png b/app/src/main/res/mipmap-xxhdpi/icon_more_hor_white.png new file mode 100644 index 0000000..7f1e162 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/icon_more_hor_white.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/icon_more_vert_black.png b/app/src/main/res/mipmap-xxhdpi/icon_more_vert_black.png new file mode 100644 index 0000000..d32453d --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/icon_more_vert_black.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/icon_more_vert_white.png b/app/src/main/res/mipmap-xxhdpi/icon_more_vert_white.png new file mode 100644 index 0000000..2955c02 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/icon_more_vert_white.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/icon_white_back.png b/app/src/main/res/mipmap-xxhdpi/icon_white_back.png new file mode 100644 index 0000000..7d82e4c --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/icon_white_back.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/icon_white_mine.png b/app/src/main/res/mipmap-xxhdpi/icon_white_mine.png new file mode 100644 index 0000000..bb1c102 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/icon_white_mine.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/icon_white_setting.png b/app/src/main/res/mipmap-xxhdpi/icon_white_setting.png new file mode 100644 index 0000000..e0c9190 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/icon_white_setting.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/location_dark.png b/app/src/main/res/mipmap-xxhdpi/location_dark.png new file mode 100644 index 0000000..9479403 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/location_dark.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/location_e.png b/app/src/main/res/mipmap-xxhdpi/location_e.png new file mode 100644 index 0000000..c4167c3 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/location_e.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/male.png b/app/src/main/res/mipmap-xxhdpi/male.png new file mode 100644 index 0000000..a4026fb --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/male.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/select.png b/app/src/main/res/mipmap-xxhdpi/select.png new file mode 100644 index 0000000..2201ad0 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/select.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/selected.png b/app/src/main/res/mipmap-xxhdpi/selected.png new file mode 100644 index 0000000..24f7897 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/selected.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/sign.png b/app/src/main/res/mipmap-xxhdpi/sign.png new file mode 100644 index 0000000..f2a9975 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/sign.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/top_left_g.png b/app/src/main/res/mipmap-xxhdpi/top_left_g.png new file mode 100644 index 0000000..ea29f4b --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/top_left_g.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/top_right_e.png b/app/src/main/res/mipmap-xxhdpi/top_right_e.png new file mode 100644 index 0000000..85845e3 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/top_right_e.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/weipay.png b/app/src/main/res/mipmap-xxhdpi/weipay.png new file mode 100644 index 0000000..2d1c5db --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/weipay.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/alipay.png b/app/src/main/res/mipmap-xxxhdpi/alipay.png new file mode 100644 index 0000000..e786fcb --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/alipay.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/arrow_bottom_black.png b/app/src/main/res/mipmap-xxxhdpi/arrow_bottom_black.png new file mode 100644 index 0000000..228b2a9 --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/arrow_bottom_black.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/arrow_bottom_white.png b/app/src/main/res/mipmap-xxxhdpi/arrow_bottom_white.png new file mode 100644 index 0000000..3bc2f7d --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/arrow_bottom_white.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/arrow_right.png b/app/src/main/res/mipmap-xxxhdpi/arrow_right.png new file mode 100644 index 0000000..2c985ee --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/arrow_right.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/arrow_top_black.png b/app/src/main/res/mipmap-xxxhdpi/arrow_top_black.png new file mode 100644 index 0000000..08ae545 --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/arrow_top_black.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/arrow_top_white.png b/app/src/main/res/mipmap-xxxhdpi/arrow_top_white.png new file mode 100644 index 0000000..2e5c1c6 --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/arrow_top_white.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/birth.png b/app/src/main/res/mipmap-xxxhdpi/birth.png new file mode 100644 index 0000000..a8c0734 --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/birth.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/data_null.png b/app/src/main/res/mipmap-xxxhdpi/data_null.png new file mode 100644 index 0000000..97d0cd1 --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/data_null.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/default_head.png b/app/src/main/res/mipmap-xxxhdpi/default_head.png new file mode 100644 index 0000000..388406d --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/default_head.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/female.png b/app/src/main/res/mipmap-xxxhdpi/female.png new file mode 100644 index 0000000..848cc79 --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/female.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/ic_add_black_48dp.png b/app/src/main/res/mipmap-xxxhdpi/ic_add_black_48dp.png new file mode 100644 index 0000000..4c0969b --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/ic_add_black_48dp.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp b/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp deleted file mode 100644 index aa7d642..0000000 --- a/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp +++ /dev/null Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp b/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp deleted file mode 100644 index 9126ae3..0000000 --- a/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp +++ /dev/null Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/ic_stay_primary_landscape_black_48dp.png b/app/src/main/res/mipmap-xxxhdpi/ic_stay_primary_landscape_black_48dp.png new file mode 100644 index 0000000..f96e29d --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/ic_stay_primary_landscape_black_48dp.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/ic_stay_primary_portrait_black_48dp.png b/app/src/main/res/mipmap-xxxhdpi/ic_stay_primary_portrait_black_48dp.png new file mode 100644 index 0000000..7283c85 --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/ic_stay_primary_portrait_black_48dp.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/icon_coin.png b/app/src/main/res/mipmap-xxxhdpi/icon_coin.png new file mode 100644 index 0000000..f62f2e7 --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/icon_coin.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/icon_home.png b/app/src/main/res/mipmap-xxxhdpi/icon_home.png new file mode 100644 index 0000000..1105353 --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/icon_home.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/icon_mine.png b/app/src/main/res/mipmap-xxxhdpi/icon_mine.png new file mode 100644 index 0000000..67d963d --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/icon_mine.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/icon_more_hor_black.png b/app/src/main/res/mipmap-xxxhdpi/icon_more_hor_black.png new file mode 100644 index 0000000..b288bf0 --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/icon_more_hor_black.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/icon_more_hor_white.png b/app/src/main/res/mipmap-xxxhdpi/icon_more_hor_white.png new file mode 100644 index 0000000..3632879 --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/icon_more_hor_white.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/icon_more_vert_black.png b/app/src/main/res/mipmap-xxxhdpi/icon_more_vert_black.png new file mode 100644 index 0000000..037b6f1 --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/icon_more_vert_black.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/icon_more_vert_white.png b/app/src/main/res/mipmap-xxxhdpi/icon_more_vert_white.png new file mode 100644 index 0000000..25b6f9f --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/icon_more_vert_white.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/icon_news.png b/app/src/main/res/mipmap-xxxhdpi/icon_news.png new file mode 100644 index 0000000..019b379 --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/icon_news.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/icon_white_back.png b/app/src/main/res/mipmap-xxxhdpi/icon_white_back.png new file mode 100644 index 0000000..f982292 --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/icon_white_back.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/icon_white_mine.png b/app/src/main/res/mipmap-xxxhdpi/icon_white_mine.png new file mode 100644 index 0000000..7f34a24 --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/icon_white_mine.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/icon_white_setting.png b/app/src/main/res/mipmap-xxxhdpi/icon_white_setting.png new file mode 100644 index 0000000..74a39f8 --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/icon_white_setting.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/location_dark.png b/app/src/main/res/mipmap-xxxhdpi/location_dark.png new file mode 100644 index 0000000..bb5d684 --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/location_dark.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/location_e.png b/app/src/main/res/mipmap-xxxhdpi/location_e.png new file mode 100644 index 0000000..750b3c8 --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/location_e.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/male.png b/app/src/main/res/mipmap-xxxhdpi/male.png new file mode 100644 index 0000000..ac40905 --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/male.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/select.png b/app/src/main/res/mipmap-xxxhdpi/select.png new file mode 100644 index 0000000..a1e504e --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/select.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/selected.png b/app/src/main/res/mipmap-xxxhdpi/selected.png new file mode 100644 index 0000000..a559d86 --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/selected.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/top_left_g.png b/app/src/main/res/mipmap-xxxhdpi/top_left_g.png new file mode 100644 index 0000000..99aa3a7 --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/top_left_g.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/top_right_e.png b/app/src/main/res/mipmap-xxxhdpi/top_right_e.png new file mode 100644 index 0000000..47eb55c --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/top_right_e.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/weipay.png b/app/src/main/res/mipmap-xxxhdpi/weipay.png new file mode 100644 index 0000000..cea5b21 --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/weipay.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/welcom.png b/app/src/main/res/mipmap-xxxhdpi/welcom.png new file mode 100644 index 0000000..db9de44 --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/welcom.png Binary files differ diff --git a/app/src/main/res/navigation/mobile_navigation.xml b/app/src/main/res/navigation/mobile_navigation.xml index 1887f2e..97a20ea 100644 --- a/app/src/main/res/navigation/mobile_navigation.xml +++ b/app/src/main/res/navigation/mobile_navigation.xml @@ -7,19 +7,19 @@ <fragment android:id="@+id/navigation_home" - android:name="com.runt.open.mvvm.ui.home.HomeFragment" + android:name="com.runt.open.mvvm.ui.main.home.HomeFragment" android:label="@string/title_home" tools:layout="@layout/fragment_home" /> <fragment android:id="@+id/navigation_dashboard" - android:name="com.runt.open.mvvm.ui.dashboard.DashboardFragment" + android:name="com.runt.open.mvvm.ui.main.dashboard.DashboardFragment" android:label="@string/title_dashboard" tools:layout="@layout/fragment_dashboard" /> <fragment android:id="@+id/navigation_notifications" - android:name="com.runt.open.mvvm.ui.notifications.NotificationsFragment" + android:name="com.runt.open.mvvm.ui.main.notifications.NotificationsFragment" android:label="@string/title_notifications" tools:layout="@layout/fragment_notifications" /> </navigation> \ No newline at end of file diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index b15bd48..7ad4401 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -1,5 +1,105 @@ <?xml version="1.0" encoding="utf-8"?> <resources> + <color name="colorPrimary">@color/theme_color</color> + <color name="colorPrimaryDark">#17B4A0</color> + <color name="colorAccent">#D81B60</color> + + <color name="theme_color">#3475F8</color> + <color name="theme_tint_color">#A7C3FA</color> + <color name="press_color">#8B8C8D</color> + <color name="enable_color">#646161</color> + <color name="enable_txt_color">#D5D2D2</color> + <color name="txt_color">#2C2C2C</color> + <color name="txt_cusor_color">#FFFFFF</color> + <color name="shade_color">#F0F0F0</color> + + + + <color name="btn_login_normal">@color/theme</color> + <color name="btn_logout_normal">#d33f3f</color> + <color name="btn_logout_pressed">#DA5A4D</color> + <color name="btn_register_normal">#ffffff</color> + <color name="btn_register_pressed">@color/theme</color> + <color name="common_bottom_bar_normal_bg">#2d2f31</color> + <color name="common_bottom_bar_selected_bg">#161718</color> + <color name="common_botton_bar_blue">#2ea7e0</color> + <color name="common_bg">#fcfcfc</color> + <color name="btn_pressed_green_solid">#B6DA53</color> + <color name="divider_list">#d4d4d4</color> + <color name="top_bar_normal_bg">@color/theme</color> + <color name="error_item_color">#F6EBE6</color> + <color name="bottom_bar_normal_bg">#2D2F31</color> + <color name="bottom_text_color_normal">#ffffff</color> + <color name="btn_white_normal">#f7f8f8</color> + <color name="btn_white_pressed">#b5b5b6</color> + <color name="btn_green_noraml">#68C270</color> + <color name="btn_green_pressed">#6FCD78</color> + <color name="btn_gray_normal">#c0c0c0</color> + <color name="btn_gray_pressed_status">#b5b5b6</color> + <color name="btn_gray_pressed">#666667</color> + <color name="btn_blue_normal">#1e90ff</color> + <color name="btn_blue_pressed">#0066FF</color> + <color name="blue_sky">#34a2ff</color> + <color name="color_blue">#5070b2</color> + <color name="orange">#FFA500</color> + <color name="gray_pressed">#b5b5b6</color> + <color name="gray_normal">#666667</color> + <color name="grid_state_pressed">#1Affffff</color> + <color name="grid_state_focused">#80000000</color> + <color name="voip_interface_text_color">#bababa</color> + <color name="black_deep">#FF000000</color> + <color name="btn_answer_pressed">#4ebcd3</color> + <color name="btn_answer_normal">#2dafa3</color> + <color name="list_item_secondary_color">#888888</color> + <color name="list_item_primary_color">#000</color> + <color name="holo_blue_bright">#ff00ddff</color> + <color name="holo_green_light">#ff99cc00</color> + <color name="holo_orange_light">#ffffbb33</color> + <color name="holo_red_light">#ffff4444</color> + <color name="holo_black">#ff111111</color> + + <color name="bg_tools_panel">#2F2F2F</color> + <color name="color_transparent">#00000000</color> + + <color name="em_blue">#1E88E5</color> + <color name="em_blue_pressed">#0000aF</color> + + <color name="em_indicator_select">#9E9E9E</color> + <color name="em_indicator_normal">#1AFFFFFF</color> + + <color name="btn_normal">@color/theme</color> + <color name="btn_press">#03a687</color> + + <color name="anv_normal">#FFBDBEC0</color> + + <color name="transparent">#00000000</color> + <color name="err">#f90c10</color> + <color name="green">#06ae3b</color> + <color name="theme">#3D71E5</color> + <color name="link">@color/theme</color> + <color name="deep_blue">#0864ce</color> + <color name="txt_enable">#9D9D9D</color> + <color name="cut_off_line">#DDDDDD</color> + <color name="cut_off_circle">#A4A4A4</color> + <color name="txt_normal">#333333</color> + <color name="txt_hint">#F9FAFC</color> + <color name="input_bg">#F9FAFC</color> + <color name="background_color">#f7f7f7</color> + <color name="color_gray">#e6ebee</color> + <color name="color_gray8">#e6e6e6</color> + <color name="ske_blue">#34a7ff</color> + <color name="gold">#ffba02</color> + <color name="sign_today">#ff6b6a</color> + + <color name="black_10">#1A000000</color> + <color name="black_20">#43000000</color> + <color name="bottom_menu_btn_bg_common_color">#FFFFFF</color> + <color name="bottom_menu_btn_bg_press_color">#EEEEEE</color> + <color name="bottom_menu_btn_text_commom_color">#5B729A</color> + <color name="bottom_menu_btn_text_press_colot">#3F51B5</color> + <color name="bottom_menu_btn_text_stress_color">#FF0000</color> + <color name="bottom_menu_layout_color">#00000000</color> + <color name="teal_700">#FF018786</color> <color name="black">#FF000000</color> <color name="black_4">#373737</color> @@ -15,5 +115,11 @@ <color name="enable_sky">#889DB6</color> <color name="deep_sky">#4184D6</color> <color name="sky">#509CFA</color> - <color name="gold">#FAD550</color> + <color name="main_bg">#1C2250</color> + <color name="color_pink">#E45CB0</color> + <color name="color_prog">#52E5C7</color> + <color name="trans_blue">#62B8F6</color> + <color name="ui_content">#fff8f8f8</color> + <color name="cameralist_gray">#e3e3e3</color> + <color name="corsor_color">#adadad</color> </resources> \ No newline at end of file diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml index 60f9c7e..59f56cf 100644 --- a/app/src/main/res/values/dimens.xml +++ b/app/src/main/res/values/dimens.xml @@ -1,9 +1,48 @@ <resources> <!-- Default screen margins, per the Android Design guidelines. --> - <dimen name="activity_horizontal_margin">16dp</dimen> - <dimen name="activity_vertical_margin">16dp</dimen> <dimen name="small_radios">3dp</dimen> - <dimen name="circle">1000dp</dimen> <dimen name="radios">10dp</dimen> <dimen name="frame_margin_lr">10dp</dimen> + + <!-- 间距 --> + <dimen name="activity_title_bar_height">45dp</dimen> + <dimen name="btn_top_buttom_padding">10dp</dimen> + <dimen name="edit_text_padding">12dp</dimen> + <!-- titleBar或底部栏分割线高度 --> + <dimen name="bar_divider_height">4dp</dimen> + + <!-- 字体 --> + <dimen name="top_bar_title_size">18sp</dimen> + <dimen name="normal_text_size">16sp</dimen> + <dimen name="small_text_size">14sp</dimen> + <dimen name="smaller_text_size">12sp</dimen> + <dimen name="activity_horizontal_margin">10dp</dimen> + <dimen name="activity_vertical_margin">10dp</dimen> + <dimen name="normal_margin">5dp</dimen> + <dimen name="large_margin">15dp</dimen> + <dimen name="normal_padding">10dp</dimen> + <dimen name="radius">10dp</dimen> + + + <dimen name="title_height">47dp</dimen> + <dimen name="pt_title_height">27pt</dimen> + <dimen name="title_size">16sp</dimen> + <dimen name="txt_small_size">12sp</dimen> + <dimen name="txt_size">12sp</dimen> + <dimen name="tab_icon_width">22dp</dimen> + <dimen name="tab_icon_height">22dp</dimen> + <dimen name="edit_height">40dp</dimen> + <dimen name="circle">1000dp</dimen> + <dimen name="corner">10dp</dimen> + <dimen name="edit_corner">3dp</dimen> + <dimen name="pageLeftPadding">20dp</dimen> + <dimen name="pic_size">150dp</dimen> + <dimen name="sign_text_size">12sp</dimen> + <dimen name="sign_text_margin">12dp</dimen> + <dimen name="text_padding_left">15dp</dimen> + + <!-- 间距 --> + <dimen name="default_margin_lr">27dp</dimen> + <dimen name="default_margin_td">12dp</dimen> + </resources> \ No newline at end of file diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index f26a5c1..db5c358 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -12,4 +12,55 @@ <attr name="rightTextSize" format="dimension" /> <attr name="rightTextColor" format="color" /> </declare-styleable> + + + <declare-styleable name="LinearLayoutWithText"> + <attr name="linbackgroundColor" format="color" /> + <attr name="text_title" format="string" /> + <attr name="text_titleColor" format="color"/> + <attr name="text_right" format="string"/> + <attr name="hint_right" format="string" /> + <attr name="hint_title" format="string" /> + <attr name="text_rightColor" format="color"/> + <attr name="divider_visible"> + <enum name="visible" value="0" /> + <enum name="invisible" value="4" /> + <enum name="gone" value="8" /> + </attr> + <attr name="img_visible"> + <enum name="visible" value="0" /> + <enum name="invisible" value="4" /> + <enum name="gone" value="8" /> + </attr> + <attr name="text_rightSize" format="integer"/> + <attr name="text_titleSize" format="integer"/> + <attr name="red_poit_count" format="integer"/> + <attr name="paddingLeft" format="dimension" /> + <attr name="paddingRight" format="dimension" /> + <attr name="paddingTop" format="dimension" /> + <attr name="paddingBottom" format="dimension" /> + <attr name="padding" format="dimension" /> + <attr name="hint_titleColor" format="color"/> + <attr name="hint_rightColor" format="color"/> + <attr name="leftCompoundDrawable" format="reference" /> + <attr name="leftCompoundDrawableSize" format="integer"/> + <attr name="rightCompoundDrawable" format="reference" /> + <attr name="enable" format="boolean" /> + </declare-styleable> + + <declare-styleable name="CircleImageView"> + <attr name="border_width" format="dimension" /> + <attr name="border_color" format="color" /> + </declare-styleable> + + <style name="txt_normal"> + <item name="android:layout_width">wrap_content</item> + <item name="android:layout_height">wrap_content</item> + <item name="android:textSize">@dimen/normal_text_size</item> + <item name="android:textColor">@color/txt_color</item> + </style> + + <style name="TransparentDialog" parent="Theme.AppCompat.Dialog"> + <item name="android:windowBackground">@color/transparent</item> + </style> </resources> \ No newline at end of file diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml index 21b5366..99e3317 100644 --- a/app/src/main/res/values/themes.xml +++ b/app/src/main/res/values/themes.xml @@ -13,4 +13,6 @@ <item name="android:statusBarColor" tools:targetApi="l">?attr/colorPrimaryVariant</item> <!-- Customize your theme here. --> </style> + + </resources> \ No newline at end of file diff --git a/settings.gradle b/settings.gradle index 9563052..8038405 100644 --- a/settings.gradle +++ b/settings.gradle @@ -4,6 +4,8 @@ google() mavenCentral() jcenter() // Warning: this repository is going to shut down soon + maven { url 'https://artifact.bytedance.com/repository/pangle' } + maven { url "https://jitpack.io" } } } rootProject.name = "OpemMvvm" -- Gitblit v1.9.1