Commit e0d3df4d by YKai

Merge remote-tracking branch 'origin/4.1.64' into 4.1.64

parents 42f451b3 751a3eb5
......@@ -33,7 +33,7 @@ ext {
//-------------- 功能组件 --------------
//第一步
"ydl-platform" : "0.0.39.63",
"ydl-platform" : "0.0.39.65",
//第二步 若干
"ydl-webview" : "0.0.38.33",
......@@ -114,7 +114,7 @@ ext {
//-------------- 功能组件 --------------
//第一步
"ydl-platform" : "0.0.39.61",
"ydl-platform" : "0.0.39.65",
//第二步 若干
"ydl-webview" : "0.0.38.32",
......@@ -137,7 +137,7 @@ ext {
"cardview-v7" : "com.android.support:cardview-v7:${version["androidSupportSdkVersion"]}",
"annotations" : "com.android.support:support-annotations:${version["androidSupportSdkVersion"]}",
"recyclerview-v7" : "com.android.support:recyclerview-v7:${version["androidSupportSdkVersion"]}",
"constraint-layout" : "com.android.support.constraint:constraint-layout:1.0.2",
"constraint-layout" : "com.android.support.constraint:constraint-layout:1.1.3",
//network
"retrofit" : "com.squareup.retrofit2:retrofit:${version["retrofitSdkVersion"]}",
......
......@@ -3,13 +3,18 @@ package com.yidianling.user.ui.login
import android.app.Activity
import android.content.Intent
import android.graphics.Color
import android.support.v4.content.ContextCompat
import android.text.Editable
import android.text.TextUtils
import android.text.TextWatcher
import android.text.method.HideReturnsTransformationMethod
import android.text.method.PasswordTransformationMethod
import android.view.View
import android.view.animation.AnimationUtils
import com.umeng.socialize.UMShareAPI
import com.umeng.socialize.UMShareConfig
import com.umeng.socialize.bean.SHARE_MEDIA
import com.ydl.ydlcommon.base.BaseMvpActivity
import com.ydl.ydlcommon.bean.StatusBarOptions
import com.ydl.ydlcommon.utils.ActivityManager
import com.ydl.ydlcommon.utils.StatusBarUtils
......@@ -20,13 +25,17 @@ import com.yidianling.common.tools.ToastUtil
import com.yidianling.user.LoginUtils
import com.yidianling.user.R
import com.yidianling.user.constants.UserBIConstants
import com.yidianling.user.route.UserIn
import com.yidianling.user.safePrivate.FingerPrintCheckActivity
import com.yidianling.user.safePrivate.FingerPrintUtil
import com.yidianling.user.safePrivate.HandUnlockCheckActivity
import com.yidianling.user.ui.login.contract.IInputPassWordContract
import com.yidianling.user.ui.login.presenter.InputPassWordPresenterImpl
import kotlinx.android.synthetic.main.user_activity_input_password.*
import kotlinx.android.synthetic.main.user_activity_input_password_new.*
import kotlinx.android.synthetic.main.user_activity_input_password_new.et_input_password
import kotlinx.android.synthetic.main.user_activity_input_password_new.img_reg_back
import kotlinx.android.synthetic.main.user_activity_input_password_new.iv_visibility
import kotlinx.android.synthetic.main.user_activity_input_password_new.tv_forget
import kotlinx.android.synthetic.main.user_activity_input_password_new.tv_msm_login
import kotlinx.android.synthetic.main.user_activity_input_password_new.view_lin
import kotlinx.android.synthetic.main.user_activity_register_and_login_bottom.*
import kotlinx.android.synthetic.main.user_activity_register_and_login_new.*
/**
* @author jiucheng
......@@ -82,7 +91,7 @@ class InputPassWordActivity : BaseMvpActivity<IInputPassWordContract.View,IInput
}
override fun layoutResId(): Int {
return R.layout.user_activity_input_password
return R.layout.user_activity_input_password_new
}
override fun initDataAndEvent() {
......@@ -101,7 +110,8 @@ class InputPassWordActivity : BaseMvpActivity<IInputPassWordContract.View,IInput
}
private fun setWindowStatusBarColor() {
StatusBarUtils.setWindowStatusBarColor(this, R.color.platform_color_075b66)
StatusBarUtils.Companion.setWindowStatusBarColor(this, R.color.white)
StatusBarUtils.Companion.setStatusBarLightMode(this,true)
}
private fun initView() {
......@@ -115,20 +125,22 @@ class InputPassWordActivity : BaseMvpActivity<IInputPassWordContract.View,IInput
val sb = StringBuffer(userPhoneNumber)
sb.insert(3, " ")
sb.insert(8, " ")
tv_user_phone.text = sb.toString()
// tv_user_phone.text = sb.toString()
} else {
tv_user_phone.text = userPhoneNumber
// tv_user_phone.text = userPhoneNumber
}
}
STATUS_SET_PWD -> {//设置密码
//设置新密码
tv_forget.visibility = View.GONE
tv_msm_login.visibility = View.GONE
tv_setPass2.visibility = View.VISIBLE
input_password.text = "设置新密码"
tv_phone_num.text = "密码为6-16个字符,数字或英文字母组合"
// tv_setPass2.visibility = View.VISIBLE
tv_password_orSet_title.text = "设置新密码"
et_input_password.hint="输入新密码"
forget_password_hint.visibility=View.VISIBLE
//设置密码时默认密码明文显示
iv_visibility.isSelected = true
login_password.text="完成"
switchPwdShowType()
}
}
......@@ -144,7 +156,25 @@ class InputPassWordActivity : BaseMvpActivity<IInputPassWordContract.View,IInput
private fun setClickEvent() {
input_img_back.setOnClickListener {
et_input_password.addTextChangedListener(object:TextWatcher{
override fun afterTextChanged(s: Editable?) {
if (s.toString().isNotEmpty()){
login_password.isEnabled=true
login_password.background= ContextCompat.getDrawable(this@InputPassWordActivity,R.drawable.bg_one_click_login)
}else{
login_password.isEnabled=false
login_password.background=ContextCompat.getDrawable(this@InputPassWordActivity,R.drawable.login_password_unable_bg_24dp)
}
}
override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int) {
}
override fun onTextChanged(s: CharSequence?, start: Int, before: Int, count: Int) {
}
})
img_reg_back.setOnClickListener {
if (ActivityManager.getInstance().getSecondTaskActivity() == null) {
closeAnim(true)
} else {
......@@ -155,7 +185,7 @@ class InputPassWordActivity : BaseMvpActivity<IInputPassWordContract.View,IInput
}
}
}
input_iv_next.setOnClickListener {
login_password.setOnClickListener {
//下一步
if (STATUS_INPUT_PWD == codeStatus) {
......@@ -170,9 +200,9 @@ class InputPassWordActivity : BaseMvpActivity<IInputPassWordContract.View,IInput
}
}
input_iv_del.setOnClickListener {
/* input_iv_del.setOnClickListener {
et_input_password.setText("")
}
}*/
iv_visibility.setOnClickListener {
iv_visibility.isSelected = !iv_visibility.isSelected
......@@ -234,12 +264,17 @@ class InputPassWordActivity : BaseMvpActivity<IInputPassWordContract.View,IInput
*菊花框
*/
override fun showLoading(state: Boolean) {
if (state) {
/*if (state) {
input_iv_next.visibility = View.GONE
input_progressBarNormal.visibility = View.VISIBLE
} else {
input_iv_next.visibility = View.VISIBLE
input_progressBarNormal.visibility = View.GONE
}*/
if (state){
showProgressDialog()
}else{
dismissProgressDialog()
}
}
......@@ -265,8 +300,8 @@ class InputPassWordActivity : BaseMvpActivity<IInputPassWordContract.View,IInput
override fun startAnim() {
val shake = AnimationUtils.loadAnimation(this, R.anim.user_shake_input)//加载动画资源文件 
et_input_password.startAnimation(shake)
view_input_lin.startAnimation(shake)
view_input_lin.setBackgroundColor(Color.parseColor("#FB6761"))
view_lin.startAnimation(shake)
view_lin.setBackgroundColor(Color.parseColor("#FB6761"))
}
override fun showNormalDialog() {
......
......@@ -254,7 +254,7 @@ class RegisterAndLoginActivity : BaseMvpActivity<ILoginContract.View, ILoginCont
requestFocus()
if (isUmengLoginState) {
// tv_skip.visibility = View.VISIBLE
skip_bind.visibility = View.VISIBLE
// tv_des.text = "首次绑定即送大礼包"
// tv_des.visibility = View.GONE//"同意"
iv_select_protocol.visibility = View.GONE
......@@ -262,6 +262,7 @@ class RegisterAndLoginActivity : BaseMvpActivity<ILoginContract.View, ILoginCont
login_wechat.visibility = View.GONE
login_qq.visibility = View.GONE
tv_login_title.text = "手机号绑定"
ll_next.text="发送验证码"
tv_protocol.visibility = View.GONE
}
......@@ -285,7 +286,7 @@ class RegisterAndLoginActivity : BaseMvpActivity<ILoginContract.View, ILoginCont
if (isFromGuide) {
img_reg_back.visibility = View.INVISIBLE
img_reg_back.isEnabled = false
// tv_skip.visibility = View.VISIBLE
// skip_bind.visibility = View.VISIBLE
// tv_skip.text = "随便逛逛"
}
//根据来源不同为当前页面埋点
......@@ -329,11 +330,11 @@ class RegisterAndLoginActivity : BaseMvpActivity<ILoginContract.View, ILoginCont
* 设置点击事件
*/
private fun setClickEvent() {
// tv_skip.setOnClickListener {
// ActionCountUtils.count(uid = "", partId = UserBIConstants.PART_ID_LOGIN_MAIN, position = UserBIConstants.POSITION_LOOK_AROUND_CLICK, url = "无url",api = "无api", sign1 = "")
// RxKeyboardTool.hideSoftInput(this)
// onBackPressed()
// }
skip_bind.setOnClickListener {
ActionCountUtils.count(uid = "", partId = UserBIConstants.PART_ID_LOGIN_MAIN, position = UserBIConstants.POSITION_LOOK_AROUND_CLICK, url = "无url",api = "无api", sign1 = "")
RxKeyboardTool.hideSoftInput(this)
onBackPressed()
}
img_reg_back.setOnClickListener {
RxKeyboardTool.hideSoftInput(this)
onBackPressed()
......@@ -474,14 +475,15 @@ class RegisterAndLoginActivity : BaseMvpActivity<ILoginContract.View, ILoginCont
if (bindPhone != 1) {
countryCode = userInfo.country_code
isUmengLoginState = true
// tv_skip.visibility = View.VISIBLE
skip_bind.visibility = View.VISIBLE
// tv_des.text = "首次绑定即送大礼包"
// tv_des.visibility = View.GONE
iv_select_protocol.visibility = View.GONE
// tv_des_first.visibility = View.VISIBLE
bind_phone_hint.visibility=View.VISIBLE
login_wechat.visibility = View.GONE
login_qq.visibility = View.GONE
tv_login_title.text = "手机号绑定"
tv_login_title.text = "绑定手机号"
tv_protocol.visibility = View.GONE
} else {
LoginUtils.LoginSuccessOperate(this)
......
......@@ -52,6 +52,11 @@ interface IVerificationCodeContract {
* 百度监测埋点
*/
fun baiduActionBury()
/*
* 验证码错误&异常超时等回调
* */
fun verificationErrorCode()
}
interface Presenter : IPresenter< View> {
......
package com.yidianling.user.ui.login.presenter
import android.annotation.SuppressLint
import android.text.TextUtils
import com.ydl.ydlcommon.modular.ModularServiceManager
import com.ydl.ydlcommon.mvp.base.BasePresenter
......@@ -129,6 +130,7 @@ class VerificationCodePresenterImpl(view: IVerificationCodeContract.View) : Base
/**
* 验证码验证码登录
*/
@SuppressLint("CheckResult")
override fun loginByMsgCode(phone: String, phoneCountryCode: String, msgCode: String) {
ActionCountUtils.count(UserBIConstants.POSITION_LOGIN_CLICK,UserBIConstants.ACTION_TYPE_CODE_LOGIN)
var param = PhoneLoginCodeParam(msgCode, phoneCountryCode, phone)
......@@ -152,7 +154,9 @@ class VerificationCodePresenterImpl(view: IVerificationCodeContract.View) : Base
}
mView.closeActivity()
} else {
mView.startAnim()
ToastUtil.toastShort(it.msg)//服务端返回{验证码错误&异常}信息
// mView.startAnim()
mView.verificationErrorCode()
}
}, {
mView.startAnim()
......
......@@ -82,7 +82,7 @@ open class PinField : AppCompatEditText {
protected var yPadding = dp2px(10f)
protected var highlightSingleFieldType =
public var highlightSingleFieldType =
HighlightType.ALL_FIELDS
private var lastCursorChangeState: Long = -1
......@@ -90,7 +90,7 @@ open class PinField : AppCompatEditText {
private var cursorCurrentVisible = true
private val cursorTimeout = 500L
// public var fieldBgColor=0
var isCustomBackground = false
set(value) {
if (!value) {
......
......@@ -2,19 +2,21 @@
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto">
xmlns:app="http://schemas.android.com/apk/res-auto"
android:background="@color/white"
>
<ImageView
android:id="@+id/img_reg_back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/platform_dp_16"
android:layout_marginTop="@dimen/platform_dp_20"
android:layout_marginTop="@dimen/platform_dp_30"
android:src="@drawable/user_ic_back_black"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
/>
<TextView
android:id="@+id/tv_login_title"
android:id="@+id/tv_password_orSet_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/platform_dp_40"
......@@ -29,9 +31,9 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
app:layout_constraintTop_toBottomOf="@id/tv_login_title"
app:layout_constraintTop_toBottomOf="@id/tv_password_orSet_title"
android:layout_marginTop="100dp"
app:layout_constraintLeft_toLeftOf="@id/tv_login_title"
app:layout_constraintLeft_toLeftOf="@id/tv_password_orSet_title"
android:layout_weight="1"
android:background="@null"
android:digits="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
......@@ -48,7 +50,7 @@
android:layout_marginEnd="@dimen/platform_dp_40"
android:background="@color/platform_color_EBEBEB"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="@id/tv_login_title"
app:layout_constraintStart_toStartOf="@id/tv_password_orSet_title"
app:layout_constraintTop_toBottomOf="@id/et_input_password"
/>
<ImageView
......@@ -71,6 +73,7 @@
app:layout_constraintEnd_toEndOf="@id/view_lin"
android:layout_marginEnd="@dimen/platform_dp_27"
android:id="@+id/forget_password_hint"
android:visibility="gone"
>
</TextView>
<TextView
......@@ -133,7 +136,6 @@
app:layout_constraintStart_toStartOf="@id/tv_msm_login"
app:layout_constraintEnd_toEndOf="@id/tv_forget"
android:layout_marginTop="@dimen/platform_dp_40"
app:layout_goneMarginTop="@dimen/platform_dp_40"
/>
<include layout="@layout/user_activity_register_and_login_bottom" />
</android.support.constraint.ConstraintLayout>
\ No newline at end of file
......@@ -64,7 +64,31 @@
android:textSize="22sp"
app:layout_constraintLeft_toRightOf="@id/img_reg_back"
app:layout_constraintTop_toBottomOf="@id/img_reg_back" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintTop_toBottomOf="@id/tv_login_title"
app:layout_constraintStart_toStartOf="@id/tv_login_title"
android:text="请输入您的常用手机号"
android:textColor="@color/platform_color_242424"
android:textSize="13sp"
android:layout_marginTop="@dimen/platform_dp_5"
android:id="@+id/bind_phone_hint"
android:visibility="gone"
>
</TextView>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="跳过"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="@id/img_reg_back"
app:layout_constraintBottom_toBottomOf="@id/img_reg_back"
android:layout_marginEnd="@dimen/platform_dp_16"
android:id="@+id/skip_bind"
android:visibility="gone"
>
</TextView>
<TextView
android:id="@+id/country_code"
android:layout_width="wrap_content"
......
......@@ -3,14 +3,15 @@
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
android:layout_height="match_parent"
android:background="@color/white"
>
<ImageView
android:id="@+id/img_reg_back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/platform_dp_16"
android:layout_marginTop="@dimen/platform_dp_20"
android:layout_marginTop="@dimen/platform_dp_30"
android:src="@drawable/user_ic_back_black"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
......@@ -20,7 +21,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/platform_dp_40"
android:text="输入短信验证码"
android:text="输入验证码"
android:textColor="@color/pay_color_242424"
android:textSize="22sp"
app:layout_constraintLeft_toRightOf="@id/img_reg_back"
......@@ -85,6 +86,7 @@
android:layout_height="wrap_content"
android:text="收不到验证码?"
android:textSize="13sp"
android:id="@+id/not_get_code"
android:textColor="@color/platform_color_666666"
app:layout_constraintRight_toRightOf="@id/verify_code"
app:layout_constraintTop_toTopOf="@id/login_password"
......
......@@ -25,4 +25,5 @@
<color name="user_pinFieldLibraryAccent">#1da1f2</color>
<color name="user_inactivePinFieldColor">#ebebeb</color>
<color name="user_pinFieldLibraryTransparent">#00000000</color>
<color name="user_bgcolorred">#990000</color>
</resources>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment