|
@ -17,20 +17,24 @@ import android.support.transition.TransitionListenerAdapter; |
|
|
import android.support.transition.TransitionManager; |
|
|
import android.support.transition.TransitionManager; |
|
|
import android.support.v4.app.Fragment; |
|
|
import android.support.v4.app.Fragment; |
|
|
import android.support.v4.view.ViewCompat; |
|
|
import android.support.v4.view.ViewCompat; |
|
|
import android.support.v4.view.ViewPager; |
|
|
|
|
|
import android.support.v4.view.ViewPropertyAnimatorListenerAdapter; |
|
|
import android.support.v4.view.ViewPropertyAnimatorListenerAdapter; |
|
|
import android.support.v7.widget.RecyclerView; |
|
|
import android.support.v7.widget.RecyclerView; |
|
|
import android.support.v7.widget.StaggeredGridLayoutManager; |
|
|
import android.support.v7.widget.StaggeredGridLayoutManager; |
|
|
|
|
|
import android.text.Editable; |
|
|
|
|
|
import android.text.TextWatcher; |
|
|
import android.view.View; |
|
|
import android.view.View; |
|
|
import android.view.animation.AccelerateDecelerateInterpolator; |
|
|
import android.view.animation.AccelerateDecelerateInterpolator; |
|
|
import android.view.animation.AnticipateOvershootInterpolator; |
|
|
import android.view.animation.AnticipateOvershootInterpolator; |
|
|
import android.view.animation.Interpolator; |
|
|
import android.view.animation.Interpolator; |
|
|
import android.view.animation.OvershootInterpolator; |
|
|
import android.view.animation.OvershootInterpolator; |
|
|
|
|
|
import android.widget.EditText; |
|
|
import android.widget.ImageView; |
|
|
import android.widget.ImageView; |
|
|
import android.widget.TextView; |
|
|
import android.widget.TextView; |
|
|
|
|
|
|
|
|
import com.gmeremit.online.gmeremittance_native.R; |
|
|
import com.gmeremit.online.gmeremittance_native.R; |
|
|
import com.gmeremit.online.gmeremittance_native.base.BaseActivity; |
|
|
import com.gmeremit.online.gmeremittance_native.base.BaseActivity; |
|
|
|
|
|
import com.gmeremit.online.gmeremittance_native.customwidgets.exchangecountrylistingdialog.CountryFlagMapper; |
|
|
|
|
|
import com.gmeremit.online.gmeremittance_native.exchange_rate.model.datav2.CountryPaymentService; |
|
|
import com.gmeremit.online.gmeremittance_native.exchange_rate.model.datav2.PaymentMode; |
|
|
import com.gmeremit.online.gmeremittance_native.exchange_rate.model.datav2.PaymentMode; |
|
|
import com.gmeremit.online.gmeremittance_native.exchange_rate.view.SelectedRedBorderDecoration; |
|
|
import com.gmeremit.online.gmeremittance_native.exchange_rate.view.SelectedRedBorderDecoration; |
|
|
import com.gmeremit.online.gmeremittance_native.homeV2.view.HomeActivityV2; |
|
|
import com.gmeremit.online.gmeremittance_native.homeV2.view.HomeActivityV2; |
|
@ -45,7 +49,6 @@ import com.gmeremit.online.gmeremittance_native.splash_screen.presenter.SplashSc |
|
|
import com.gmeremit.online.gmeremittance_native.splash_screen.view.avdfrags.SplashAVD1Fragment; |
|
|
import com.gmeremit.online.gmeremittance_native.splash_screen.view.avdfrags.SplashAVD1Fragment; |
|
|
import com.gmeremit.online.gmeremittance_native.splash_screen.view.avdfrags.SplashAVD2Fragment; |
|
|
import com.gmeremit.online.gmeremittance_native.splash_screen.view.avdfrags.SplashAVD2Fragment; |
|
|
import com.gmeremit.online.gmeremittance_native.splash_screen.view.avdfrags.SplashAVD3Fragment; |
|
|
import com.gmeremit.online.gmeremittance_native.splash_screen.view.avdfrags.SplashAVD3Fragment; |
|
|
import com.gmeremit.online.gmeremittance_native.splash_screen.view.avdfrags.SplashAnimatedViewPagerFragment; |
|
|
|
|
|
|
|
|
|
|
|
import java.util.ArrayList; |
|
|
import java.util.ArrayList; |
|
|
import java.util.List; |
|
|
import java.util.List; |
|
@ -62,7 +65,6 @@ public class SplashScreen extends BaseActivity implements View.OnClickListener, |
|
|
ViewPagerAVDSplashAdapter viewPagerAdapter; |
|
|
ViewPagerAVDSplashAdapter viewPagerAdapter; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@BindView(R.id.rootLayout) |
|
|
@BindView(R.id.rootLayout) |
|
|
ConstraintLayout rootLayout; |
|
|
ConstraintLayout rootLayout; |
|
|
|
|
|
|
|
@ -87,46 +89,42 @@ public class SplashScreen extends BaseActivity implements View.OnClickListener, |
|
|
@BindView(R.id.appVersionTxtView) |
|
|
@BindView(R.id.appVersionTxtView) |
|
|
TextView appVersionTxtView; |
|
|
TextView appVersionTxtView; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//EXrate Related View |
|
|
@BindView(R.id.paymentModeRV) |
|
|
@BindView(R.id.paymentModeRV) |
|
|
RecyclerView paymentModeRV; |
|
|
RecyclerView paymentModeRV; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private int[] layouts; |
|
|
|
|
|
private TextView[] dots; |
|
|
|
|
|
|
|
|
@BindView(R.id.sendAmountEdTxt) |
|
|
|
|
|
EditText sendAmountEdTxt; |
|
|
|
|
|
|
|
|
LanguageViewTransitionManager languageViewTransitionManager; |
|
|
|
|
|
|
|
|
@BindView(R.id.receiveAmountEdTxt) |
|
|
|
|
|
EditText receiveAmountEdTxt; |
|
|
|
|
|
|
|
|
LanguageSelectionRVAdapter languageSelectionRVAdapter; |
|
|
|
|
|
|
|
|
@BindView(R.id.recepientFlagImageView) |
|
|
|
|
|
ImageView receivingCountryFlagImageView; |
|
|
|
|
|
|
|
|
LanguageModel selectedLanguage; |
|
|
|
|
|
|
|
|
@BindView(R.id.recepientCurrencyTextView) |
|
|
|
|
|
TextView receivingCurrencyCodeTxtView; |
|
|
|
|
|
|
|
|
PayoutModeSelectionRVAdapter payoutModeSelectionRVAdapter; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private SplashScreenPresenterInterface presenter; |
|
|
|
|
|
|
|
|
|
|
|
private ArrayList<Fragment> fragmentList; |
|
|
|
|
|
|
|
|
|
|
|
public final String TAG = getClass().getSimpleName(); |
|
|
|
|
|
|
|
|
LanguageViewTransitionManager languageViewTransitionManager; |
|
|
|
|
|
|
|
|
|
|
|
LanguageSelectionRVAdapter languageSelectionRVAdapter; |
|
|
|
|
|
|
|
|
ViewPager.OnPageChangeListener viewPageChangeListener = new ViewPager.OnPageChangeListener() { |
|
|
|
|
|
@Override |
|
|
|
|
|
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { |
|
|
|
|
|
|
|
|
LanguageModel selectedLanguage; |
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
PayoutModeSelectionRVAdapter payoutModeSelectionRVAdapter; |
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
public void onPageSelected(int position) { |
|
|
|
|
|
((SplashAnimatedViewPagerFragment) fragmentList.get(position)).playAnimation(position == 0 ? 300 : 0); |
|
|
|
|
|
|
|
|
private SplashScreenPresenterInterface presenter; |
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
public final String TAG = getClass().getSimpleName(); |
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
public void onPageScrollStateChanged(int state) { |
|
|
|
|
|
|
|
|
private SendAmountTextWatcher sendMoneyTextWatcher; |
|
|
|
|
|
private ReceiveAmountTextWatcher receiveMoneyTextWatcher; |
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
|
protected void onCreate(@Nullable Bundle savedInstanceState) { |
|
|
protected void onCreate(@Nullable Bundle savedInstanceState) { |
|
@ -143,10 +141,7 @@ public class SplashScreen extends BaseActivity implements View.OnClickListener, |
|
|
if (savedInstanceState == null) { |
|
|
if (savedInstanceState == null) { |
|
|
languageViewTransitionManager.underlineTitleText(true); |
|
|
languageViewTransitionManager.underlineTitleText(true); |
|
|
presenter.checkCurrentSelectedLanguage(); |
|
|
presenter.checkCurrentSelectedLanguage(); |
|
|
// view_pager.post(() -> viewPageChangeListener.onPageSelected(view_pager.getCurrentItem())); |
|
|
|
|
|
|
|
|
|
|
|
//TODO |
|
|
|
|
|
new Handler().postDelayed(()->languageViewTransitionManager.showMainViewLanguage(500,null),5000); |
|
|
|
|
|
|
|
|
presenter.getExrateRelatedData(); |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
@ -157,14 +152,8 @@ public class SplashScreen extends BaseActivity implements View.OnClickListener, |
|
|
languageViewTransitionManager = new LanguageViewTransitionManager(this); |
|
|
languageViewTransitionManager = new LanguageViewTransitionManager(this); |
|
|
initLanguageRV(); |
|
|
initLanguageRV(); |
|
|
initPayoutModeRV(); |
|
|
initPayoutModeRV(); |
|
|
|
|
|
|
|
|
// view_pager.addOnPageChangeListener(viewPageChangeListener); |
|
|
|
|
|
// viewPagerAdapter = new ViewPagerAVDSplashAdapter(getSupportFragmentManager()); |
|
|
|
|
|
//// viewPagerAdapter = new ViewPagerAdapter(); |
|
|
|
|
|
// setupViewPagerAdapter(); |
|
|
|
|
|
// view_pager.setAdapter(viewPagerAdapter); |
|
|
|
|
|
// view_pager.setOffscreenPageLimit(3); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
sendMoneyTextWatcher = new SendAmountTextWatcher(); |
|
|
|
|
|
receiveMoneyTextWatcher = new ReceiveAmountTextWatcher(); |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
@ -182,18 +171,6 @@ public class SplashScreen extends BaseActivity implements View.OnClickListener, |
|
|
paymentModeRV.setAdapter(payoutModeSelectionRVAdapter); |
|
|
paymentModeRV.setAdapter(payoutModeSelectionRVAdapter); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
private void setupViewPagerAdapter() { |
|
|
|
|
|
fragmentList = new ArrayList<>(); |
|
|
|
|
|
|
|
|
|
|
|
fragmentList.add(new SplashAVD1Fragment()); |
|
|
|
|
|
fragmentList.add(new SplashAVD2Fragment()); |
|
|
|
|
|
fragmentList.add(new SplashAVD3Fragment()); |
|
|
|
|
|
|
|
|
|
|
|
viewPagerAdapter.addFragments(fragmentList); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
|
public void onClick(View view) { |
|
|
public void onClick(View view) { |
|
|
switch (view.getId()) { |
|
|
switch (view.getId()) { |
|
@ -242,7 +219,7 @@ public class SplashScreen extends BaseActivity implements View.OnClickListener, |
|
|
if (languageViewTransitionManager.isAnimationRunning()) |
|
|
if (languageViewTransitionManager.isAnimationRunning()) |
|
|
return; |
|
|
return; |
|
|
else if (languageViewTransitionManager.isUserOnLanguageSelectionView()) |
|
|
else if (languageViewTransitionManager.isUserOnLanguageSelectionView()) |
|
|
languageViewTransitionManager.showMainViewLanguage(0,null); |
|
|
|
|
|
|
|
|
languageViewTransitionManager.showMainViewLanguageFromLanguageView(0, null); |
|
|
else |
|
|
else |
|
|
super.onBackPressed(); |
|
|
super.onBackPressed(); |
|
|
} |
|
|
} |
|
@ -281,11 +258,6 @@ public class SplashScreen extends BaseActivity implements View.OnClickListener, |
|
|
languageSelectionRVAdapter.setData(languageModels); |
|
|
languageSelectionRVAdapter.setData(languageModels); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
public void updatePayoutModeData(List<PaymentMode> payoutModes) { |
|
|
|
|
|
payoutModeSelectionRVAdapter.setData(payoutModes); |
|
|
|
|
|
payoutModeSelectionRVAdapter.setSelectedItem(0); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
|
public Context getContext() { |
|
|
public Context getContext() { |
|
@ -305,13 +277,64 @@ public class SplashScreen extends BaseActivity implements View.OnClickListener, |
|
|
appVersionTxtView.setText(appVersion); |
|
|
appVersionTxtView.setText(appVersion); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
//-------------------Exrate Related View------------------- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private void startSendAmountListener(boolean action) { |
|
|
|
|
|
if (action) { |
|
|
|
|
|
sendAmountEdTxt.addTextChangedListener(sendMoneyTextWatcher); |
|
|
|
|
|
} else { |
|
|
|
|
|
sendAmountEdTxt.removeTextChangedListener(sendMoneyTextWatcher); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
private void startReceiveAmountListener(boolean action) { |
|
|
|
|
|
|
|
|
|
|
|
if (action) { |
|
|
|
|
|
receiveAmountEdTxt.addTextChangedListener(receiveMoneyTextWatcher); |
|
|
|
|
|
} else { |
|
|
|
|
|
receiveAmountEdTxt.removeTextChangedListener(receiveMoneyTextWatcher); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
public void updatePayoutAmount(String pAmount) { |
|
|
|
|
|
startReceiveAmountListener(false); |
|
|
|
|
|
receiveAmountEdTxt.setText(pAmount); |
|
|
|
|
|
startReceiveAmountListener(true); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
public void updateCollectionAmount(String pAmount) { |
|
|
|
|
|
startSendAmountListener(false); |
|
|
|
|
|
receiveAmountEdTxt.setText(pAmount); |
|
|
|
|
|
startSendAmountListener(true); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
public void showSelectedPayoutMode(List<PaymentMode> serviceAvailable, int selectedIndex) { |
|
|
|
|
|
payoutModeSelectionRVAdapter.setData(serviceAvailable); |
|
|
|
|
|
payoutModeSelectionRVAdapter.setSelectedItem(selectedIndex); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
public void showSelectedPayoutCurrency(CountryPaymentService selectedPayoutCountryCurrency) { |
|
|
|
|
|
receivingCurrencyCodeTxtView.setText(selectedPayoutCountryCurrency.getCurrency()); |
|
|
|
|
|
receivingCountryFlagImageView.setBackgroundResource(CountryFlagMapper.getFlagFromCountryCode(selectedPayoutCountryCurrency.getCountryCode())); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
public void animateToExrateView(Runnable task) { |
|
|
|
|
|
languageViewTransitionManager.showMainViewLanguageFromPreLoadingScreen(400, task); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
|
public void onPaymentModeSelected(PaymentMode selectedData) { |
|
|
public void onPaymentModeSelected(PaymentMode selectedData) { |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
|
* Helper class to switch back and forth the language selection view. |
|
|
|
|
|
|
|
|
* Helper class to switch between different state of this activity layout. |
|
|
*/ |
|
|
*/ |
|
|
class LanguageViewTransitionManager { |
|
|
class LanguageViewTransitionManager { |
|
|
|
|
|
|
|
@ -327,7 +350,6 @@ public class SplashScreen extends BaseActivity implements View.OnClickListener, |
|
|
private int textViewPaintFlags; |
|
|
private int textViewPaintFlags; |
|
|
private ConstraintSet mainViewConstraintSet; |
|
|
private ConstraintSet mainViewConstraintSet; |
|
|
private ConstraintSet preLoadingConstraintSet; |
|
|
private ConstraintSet preLoadingConstraintSet; |
|
|
private boolean notCalculatedInitialConstraint; |
|
|
|
|
|
|
|
|
|
|
|
LanguageViewTransitionManager(Context context) { |
|
|
LanguageViewTransitionManager(Context context) { |
|
|
isAnimationOnProgress = false; |
|
|
isAnimationOnProgress = false; |
|
@ -336,17 +358,16 @@ public class SplashScreen extends BaseActivity implements View.OnClickListener, |
|
|
languageSelectionViewConstraintSet = new ConstraintSet(); |
|
|
languageSelectionViewConstraintSet = new ConstraintSet(); |
|
|
languageSelectionViewConstraintSet.clone(context, R.layout.activity_splash_screen_key_2); |
|
|
languageSelectionViewConstraintSet.clone(context, R.layout.activity_splash_screen_key_2); |
|
|
|
|
|
|
|
|
mainViewConstraintSet =new ConstraintSet(); |
|
|
|
|
|
mainViewConstraintSet.clone(context,R.layout.activity_splash_screen_key_1); |
|
|
|
|
|
|
|
|
mainViewConstraintSet = new ConstraintSet(); |
|
|
|
|
|
mainViewConstraintSet.clone(context, R.layout.activity_splash_screen_key_1); |
|
|
|
|
|
|
|
|
preLoadingConstraintSet =new ConstraintSet(); |
|
|
|
|
|
|
|
|
preLoadingConstraintSet = new ConstraintSet(); |
|
|
preLoadingConstraintSet.clone(rootLayout); |
|
|
preLoadingConstraintSet.clone(rootLayout); |
|
|
|
|
|
|
|
|
anticipateOvershootInterpolator = new AnticipateOvershootInterpolator(.8f); |
|
|
anticipateOvershootInterpolator = new AnticipateOvershootInterpolator(.8f); |
|
|
overshootInterpolator = new OvershootInterpolator(); |
|
|
overshootInterpolator = new OvershootInterpolator(); |
|
|
accelerateDecelerateInterpolator = new AccelerateDecelerateInterpolator(); |
|
|
accelerateDecelerateInterpolator = new AccelerateDecelerateInterpolator(); |
|
|
textViewPaintFlags = selectedLanguageText.getPaintFlags(); |
|
|
textViewPaintFlags = selectedLanguageText.getPaintFlags(); |
|
|
notCalculatedInitialConstraint = true; |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
@ -401,12 +422,12 @@ public class SplashScreen extends BaseActivity implements View.OnClickListener, |
|
|
selectedLanguageText.invalidate(); |
|
|
selectedLanguageText.invalidate(); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
void showMainViewLanguage(int duration,Runnable onAnimationCompleteCallback) { |
|
|
|
|
|
|
|
|
void showMainViewLanguageFromLanguageView(int duration, Runnable onAnimationCompleteCallback) { |
|
|
|
|
|
|
|
|
ChangeBounds transition = new ChangeBounds(); |
|
|
ChangeBounds transition = new ChangeBounds(); |
|
|
transition.setPathMotion(new ArcMotion()); |
|
|
transition.setPathMotion(new ArcMotion()); |
|
|
transition.setInterpolator(duration!=0? accelerateDecelerateInterpolator:overshootInterpolator); |
|
|
|
|
|
transition.setDuration(duration==0?ANIMATION_DURATION:duration); |
|
|
|
|
|
|
|
|
transition.setInterpolator(duration != 0 ? accelerateDecelerateInterpolator : overshootInterpolator); |
|
|
|
|
|
transition.setDuration(duration == 0 ? ANIMATION_DURATION : duration); |
|
|
transition.addListener(new TransitionListenerAdapter() { |
|
|
transition.addListener(new TransitionListenerAdapter() { |
|
|
@Override |
|
|
@Override |
|
|
public void onTransitionStart(@NonNull Transition transition) { |
|
|
public void onTransitionStart(@NonNull Transition transition) { |
|
@ -446,6 +467,27 @@ public class SplashScreen extends BaseActivity implements View.OnClickListener, |
|
|
mainViewConstraintSet.applyTo(rootLayout); |
|
|
mainViewConstraintSet.applyTo(rootLayout); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void showMainViewLanguageFromPreLoadingScreen(int duration, Runnable onAnimationCompleteCallback) { |
|
|
|
|
|
|
|
|
|
|
|
ChangeBounds transition = new ChangeBounds(); |
|
|
|
|
|
transition.setPathMotion(new ArcMotion()); |
|
|
|
|
|
transition.setInterpolator(duration != 0 ? accelerateDecelerateInterpolator : overshootInterpolator); |
|
|
|
|
|
transition.setDuration(duration == 0 ? ANIMATION_DURATION : duration); |
|
|
|
|
|
transition.addListener(new TransitionListenerAdapter() { |
|
|
|
|
|
@Override |
|
|
|
|
|
public void onTransitionEnd(@NonNull Transition transition) { |
|
|
|
|
|
super.onTransitionEnd(transition); |
|
|
|
|
|
isAnimationOnProgress = false; |
|
|
|
|
|
userNavigatedToLanguageView = false; |
|
|
|
|
|
if (onAnimationCompleteCallback != null) |
|
|
|
|
|
onAnimationCompleteCallback.run(); |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
}); |
|
|
|
|
|
TransitionManager.beginDelayedTransition(rootLayout, transition); |
|
|
|
|
|
mainViewConstraintSet.applyTo(rootLayout); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
public boolean isAnimationRunning() { |
|
|
public boolean isAnimationRunning() { |
|
|
return this.isAnimationOnProgress; |
|
|
return this.isAnimationOnProgress; |
|
|
} |
|
|
} |
|
@ -458,6 +500,43 @@ public class SplashScreen extends BaseActivity implements View.OnClickListener, |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class SendAmountTextWatcher implements TextWatcher { |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
public void beforeTextChanged(CharSequence s, int start, int count, int after) { |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
public void onTextChanged(CharSequence s, int start, int before, int count) { |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
public void afterTextChanged(Editable s) { |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
class ReceiveAmountTextWatcher implements TextWatcher { |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
public void beforeTextChanged(CharSequence s, int start, int count, int after) { |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
public void onTextChanged(CharSequence s, int start, int before, int count) { |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
public void afterTextChanged(Editable s) { |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
static { |
|
|
static { |
|
|
System.loadLibrary("antidebugger"); |
|
|
System.loadLibrary("antidebugger"); |
|
|
} |
|
|
} |
|
|