Preyea Regmi
6 years ago
21 changed files with 680 additions and 70 deletions
-
BIN.idea/caches/build_file_checksums.ser
-
9app/src/main/AndroidManifest.xml
-
36app/src/main/java/com/gmeremit/online/gmeremittance_native/customwidgets/DepthTransformation.java
-
82app/src/main/java/com/gmeremit/online/gmeremittance_native/customwidgets/SwipeDisabledViewPager.java
-
33app/src/main/java/com/gmeremit/online/gmeremittance_native/customwidgets/ZoomOutTransformation.java
-
20app/src/main/java/com/gmeremit/online/gmeremittance_native/homeV2/view/HomeActivityV2.java
-
33app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/adapter/PennyTestViewPagerAdapter.java
-
4app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/view/KYCFormV2Activity.java
-
266app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/view/pennytest/PennyTestActivity.java
-
38app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/view/pennytest/PennyTestModalFragment.java
-
39app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/view/pennytest/PennyTestOperationFragment.java
-
39app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/view/pennytest/PennyTestPromptFragment.java
-
2app/src/main/java/com/gmeremit/online/gmeremittance_native/transactionhistoryV2/view/TransactionFragmentV2.java
-
4app/src/main/res/anim/slide_down.xml
-
5app/src/main/res/anim/slide_up.xml
-
2app/src/main/res/layout/activity_kyc_v2.xml
-
82app/src/main/res/layout/activity_penny_test.xml
-
2app/src/main/res/layout/activity_transaction_history_v2.xml
-
25app/src/main/res/layout/fragment_penny_test_operation.xml
-
9app/src/main/res/layout/fragment_penny_test_prompt.xml
-
16app/src/main/res/values/styles.xml
@ -0,0 +1,36 @@ |
|||||
|
package com.gmeremit.online.gmeremittance_native.customwidgets; |
||||
|
|
||||
|
import android.support.v4.view.ViewPager; |
||||
|
import android.view.View; |
||||
|
|
||||
|
public class DepthTransformation implements ViewPager.PageTransformer { |
||||
|
|
||||
|
@Override |
||||
|
public void transformPage(View page, float position) { |
||||
|
|
||||
|
if (position < -1){ // [-Infinity,-1) |
||||
|
// This page is way off-screen to the left. |
||||
|
page.setAlpha(0); |
||||
|
} |
||||
|
else if (position <= 0){ // [-1,0] |
||||
|
page.setAlpha(1); |
||||
|
page.setTranslationX(0); |
||||
|
page.setScaleX(1); |
||||
|
page.setScaleY(1); |
||||
|
} |
||||
|
else if (position <= 1){ // (0,1] |
||||
|
page.setTranslationX(-position*page.getWidth()); |
||||
|
page.setAlpha(1-Math.abs(position)); |
||||
|
page.setScaleX(1-Math.abs(position)); |
||||
|
page.setScaleY(1-Math.abs(position)); |
||||
|
|
||||
|
} |
||||
|
else { // (1,+Infinity] |
||||
|
// This page is way off-screen to the right. |
||||
|
page.setAlpha(0); |
||||
|
|
||||
|
} |
||||
|
|
||||
|
|
||||
|
} |
||||
|
} |
@ -0,0 +1,33 @@ |
|||||
|
package com.gmeremit.online.gmeremittance_native.customwidgets; |
||||
|
|
||||
|
import android.support.annotation.NonNull; |
||||
|
import android.support.v4.view.ViewPager; |
||||
|
import android.view.View; |
||||
|
|
||||
|
public class ZoomOutTransformation implements ViewPager.PageTransformer { |
||||
|
|
||||
|
private static final float MIN_SCALE = 0.65f; |
||||
|
private static final float MIN_ALPHA = 0.3f; |
||||
|
|
||||
|
@Override |
||||
|
public void transformPage(@NonNull View page, float position) { |
||||
|
|
||||
|
if (position <-1){ |
||||
|
page.setAlpha(0); |
||||
|
|
||||
|
} |
||||
|
else if (position <=1){ |
||||
|
|
||||
|
page.setScaleX(Math.max(MIN_SCALE,1-Math.abs(position))); |
||||
|
page.setScaleY(Math.max(MIN_SCALE,1-Math.abs(position))); |
||||
|
page.setAlpha(Math.max(MIN_ALPHA,1-Math.abs(position))); |
||||
|
|
||||
|
} |
||||
|
else { |
||||
|
page.setAlpha(0); |
||||
|
|
||||
|
} |
||||
|
|
||||
|
|
||||
|
} |
||||
|
} |
@ -0,0 +1,33 @@ |
|||||
|
package com.gmeremit.online.gmeremittance_native.kycV2.adapter; |
||||
|
|
||||
|
import android.support.v4.app.Fragment; |
||||
|
import android.support.v4.app.FragmentManager; |
||||
|
import android.support.v4.app.FragmentPagerAdapter; |
||||
|
|
||||
|
import java.util.ArrayList; |
||||
|
import java.util.List; |
||||
|
|
||||
|
public class PennyTestViewPagerAdapter extends FragmentPagerAdapter { |
||||
|
|
||||
|
private List<Fragment> fraglist; |
||||
|
|
||||
|
public PennyTestViewPagerAdapter(FragmentManager fm) { |
||||
|
super(fm); |
||||
|
fraglist=new ArrayList<>(); |
||||
|
|
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public Fragment getItem(int position) { |
||||
|
return fraglist.get(position); |
||||
|
} |
||||
|
|
||||
|
public void addFragments(List<Fragment> data) |
||||
|
{ |
||||
|
fraglist=data; |
||||
|
} |
||||
|
@Override |
||||
|
public int getCount() { |
||||
|
return fraglist.size(); |
||||
|
} |
||||
|
} |
@ -0,0 +1,266 @@ |
|||||
|
package com.gmeremit.online.gmeremittance_native.kycV2.view.pennytest; |
||||
|
|
||||
|
import android.animation.Animator; |
||||
|
import android.animation.AnimatorListenerAdapter; |
||||
|
import android.animation.AnimatorSet; |
||||
|
import android.animation.ObjectAnimator; |
||||
|
import android.animation.ValueAnimator; |
||||
|
import android.graphics.drawable.GradientDrawable; |
||||
|
import android.os.Handler; |
||||
|
import android.support.v4.app.Fragment; |
||||
|
import android.support.v4.content.ContextCompat; |
||||
|
import android.support.v4.view.ViewCompat; |
||||
|
import android.support.v4.view.ViewPager; |
||||
|
import android.os.Bundle; |
||||
|
import android.util.Log; |
||||
|
import android.view.View; |
||||
|
import android.view.ViewGroup; |
||||
|
import android.view.Window; |
||||
|
import android.view.animation.AccelerateDecelerateInterpolator; |
||||
|
import android.view.animation.Interpolator; |
||||
|
import android.widget.Button; |
||||
|
import android.widget.ProgressBar; |
||||
|
|
||||
|
import com.gmeremit.online.gmeremittance_native.R; |
||||
|
import com.gmeremit.online.gmeremittance_native.base.BaseActivity; |
||||
|
import com.gmeremit.online.gmeremittance_native.customwidgets.ZoomOutTransformation; |
||||
|
import com.gmeremit.online.gmeremittance_native.kycV2.adapter.PennyTestViewPagerAdapter; |
||||
|
|
||||
|
import java.util.ArrayList; |
||||
|
import java.util.List; |
||||
|
|
||||
|
import butterknife.BindView; |
||||
|
import butterknife.ButterKnife; |
||||
|
|
||||
|
public class PennyTestActivity extends BaseActivity implements View.OnClickListener, ViewPager.OnPageChangeListener { |
||||
|
|
||||
|
@BindView(R.id.progressbar_login) |
||||
|
ProgressBar progressbar_login; |
||||
|
|
||||
|
@BindView(R.id.btn_submit) |
||||
|
Button submitBtn; |
||||
|
|
||||
|
@BindView(R.id.iv_back) |
||||
|
View iv_back; |
||||
|
|
||||
|
@BindView(R.id.penny_test_view_pager) |
||||
|
ViewPager penntTestViewPager; |
||||
|
|
||||
|
|
||||
|
public String buttonText; |
||||
|
|
||||
|
|
||||
|
private AnimatorSet mMorphingAnimatorSet=null; |
||||
|
private boolean mIsMorphingInProgress=false; |
||||
|
private Interpolator interpolator=new AccelerateDecelerateInterpolator(); |
||||
|
private int originalButtonWidth; |
||||
|
private boolean isLoadingInProgress=false; |
||||
|
private static float DEFAULT_CORNER_RADIUS; |
||||
|
private List<Fragment> fragments=new ArrayList<>(); |
||||
|
private PennyTestViewPagerAdapter viewPagerAdapter; |
||||
|
|
||||
|
|
||||
|
@Override |
||||
|
protected void onCreate(Bundle savedInstanceState) { |
||||
|
super.onCreate(savedInstanceState); |
||||
|
setContentView(R.layout.activity_penny_test); |
||||
|
ButterKnife.bind(this); |
||||
|
Window window = getWindow(); |
||||
|
if (window != null) { |
||||
|
window.getAttributes().windowAnimations = R.style.SlideInAnimation; |
||||
|
window.setBackgroundDrawableResource(R.drawable.ic_rounded_grey_bg_with_inset); |
||||
|
window.setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT); |
||||
|
|
||||
|
|
||||
|
|
||||
|
} |
||||
|
initialize(); |
||||
|
setupViewPager(true); |
||||
|
} |
||||
|
|
||||
|
private void setupViewPager(boolean action) { |
||||
|
if(action) |
||||
|
fragments.add(new PennyTestPromptFragment()); |
||||
|
fragments.add(new PennyTestOperationFragment()); |
||||
|
|
||||
|
viewPagerAdapter=new PennyTestViewPagerAdapter(getSupportFragmentManager()); |
||||
|
viewPagerAdapter.addFragments(fragments); |
||||
|
|
||||
|
penntTestViewPager.setPageTransformer(true,new ZoomOutTransformation()); |
||||
|
penntTestViewPager.addOnPageChangeListener(this); |
||||
|
penntTestViewPager.setAdapter(viewPagerAdapter); |
||||
|
|
||||
|
onPageSelected(0); |
||||
|
|
||||
|
} |
||||
|
|
||||
|
|
||||
|
private void initialize() { |
||||
|
DEFAULT_CORNER_RADIUS=35*getResources().getDisplayMetrics().density; |
||||
|
progressbar_login.getIndeterminateDrawable().setColorFilter(ContextCompat.getColor(this,android.R.color.white), android.graphics.PorterDuff.Mode.MULTIPLY); |
||||
|
ViewCompat.setTranslationZ(progressbar_login, 100); |
||||
|
progressbar_login.setVisibility(View.GONE); |
||||
|
|
||||
|
} |
||||
|
|
||||
|
|
||||
|
@Override |
||||
|
protected void onStart() { |
||||
|
super.onStart(); |
||||
|
submitBtn.setOnClickListener(this); |
||||
|
iv_back.setOnClickListener(this); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
protected void onStop() { |
||||
|
super.onStop(); |
||||
|
submitBtn.setOnClickListener(null); |
||||
|
iv_back.setOnClickListener(null); |
||||
|
|
||||
|
} |
||||
|
|
||||
|
private void morphButtonIntoProgressBar() |
||||
|
{ |
||||
|
GradientDrawable mGradientDrawable = (GradientDrawable) submitBtn.getBackground(); |
||||
|
|
||||
|
buttonText = submitBtn.getText().toString(); |
||||
|
|
||||
|
ObjectAnimator cornerAnimation = |
||||
|
ObjectAnimator.ofFloat(mGradientDrawable, |
||||
|
"cornerRadius", |
||||
|
DEFAULT_CORNER_RADIUS, |
||||
|
submitBtn.getHeight()); |
||||
|
|
||||
|
originalButtonWidth= submitBtn.getWidth(); |
||||
|
ValueAnimator widthAnimation = ValueAnimator.ofInt(submitBtn.getWidth(), submitBtn.getHeight()); |
||||
|
widthAnimation.addUpdateListener(valueAnimator -> { |
||||
|
int val = (Integer) valueAnimator.getAnimatedValue(); |
||||
|
ViewGroup.LayoutParams layoutParams = submitBtn.getLayoutParams(); |
||||
|
layoutParams.width = val; |
||||
|
submitBtn.setLayoutParams(layoutParams); |
||||
|
}); |
||||
|
|
||||
|
mMorphingAnimatorSet = new AnimatorSet(); |
||||
|
mMorphingAnimatorSet.setDuration(330); |
||||
|
mMorphingAnimatorSet.setInterpolator(interpolator); |
||||
|
mMorphingAnimatorSet.playTogether(cornerAnimation, widthAnimation); |
||||
|
mMorphingAnimatorSet.addListener(new AnimatorListenerAdapter() { |
||||
|
|
||||
|
@Override |
||||
|
public void onAnimationStart(Animator animation) { |
||||
|
super.onAnimationStart(animation); |
||||
|
mIsMorphingInProgress = true; |
||||
|
isLoadingInProgress=true; |
||||
|
submitBtn.setText(""); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void onAnimationEnd(Animator animation) { |
||||
|
mIsMorphingInProgress = false; |
||||
|
// ViewCompat.setTranslationZ(progressbar_login, 100); |
||||
|
progressbar_login.setVisibility(View.VISIBLE); |
||||
|
} |
||||
|
}); |
||||
|
mMorphingAnimatorSet.start(); |
||||
|
} |
||||
|
|
||||
|
public void morphProgressBarIntoButton(Runnable callback) |
||||
|
{ |
||||
|
GradientDrawable mGradientDrawable = (GradientDrawable) submitBtn.getBackground(); |
||||
|
|
||||
|
|
||||
|
ObjectAnimator cornerAnimation = |
||||
|
ObjectAnimator.ofFloat(mGradientDrawable, |
||||
|
"cornerRadius", |
||||
|
submitBtn.getHeight(), |
||||
|
DEFAULT_CORNER_RADIUS); |
||||
|
|
||||
|
ValueAnimator widthAnimation = ValueAnimator.ofInt(submitBtn.getHeight(), originalButtonWidth); |
||||
|
widthAnimation.addUpdateListener(valueAnimator -> { |
||||
|
int val = (Integer) valueAnimator.getAnimatedValue(); |
||||
|
ViewGroup.LayoutParams layoutParams = submitBtn.getLayoutParams(); |
||||
|
layoutParams.width = val; |
||||
|
submitBtn.setLayoutParams(layoutParams); |
||||
|
}); |
||||
|
|
||||
|
|
||||
|
mMorphingAnimatorSet = new AnimatorSet(); |
||||
|
mMorphingAnimatorSet.setDuration(330); |
||||
|
mMorphingAnimatorSet.setInterpolator(interpolator); |
||||
|
mMorphingAnimatorSet.playTogether(cornerAnimation, widthAnimation); |
||||
|
mMorphingAnimatorSet.addListener(new AnimatorListenerAdapter() { |
||||
|
|
||||
|
@Override |
||||
|
public void onAnimationStart(Animator animation) { |
||||
|
super.onAnimationStart(animation); |
||||
|
mIsMorphingInProgress = true; |
||||
|
// ViewCompat.setTranslationZ(progressbar_login, 0); |
||||
|
progressbar_login.setVisibility(View.GONE); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void onAnimationEnd(Animator animation) { |
||||
|
mIsMorphingInProgress = false; |
||||
|
submitBtn.setText(buttonText); |
||||
|
isLoadingInProgress=false; |
||||
|
if(callback!=null) |
||||
|
callback.run(); |
||||
|
|
||||
|
|
||||
|
} |
||||
|
}); |
||||
|
mMorphingAnimatorSet.start(); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
@Override |
||||
|
public void onClick(View v) { |
||||
|
switch(v.getId()) |
||||
|
{ |
||||
|
case R.id.btn_submit: |
||||
|
morphButtonIntoProgressBar(); |
||||
|
new Handler().postDelayed(()->morphProgressBarIntoButton(()->penntTestViewPager.setCurrentItem(1,true)),3000); |
||||
|
break; |
||||
|
|
||||
|
case R.id.iv_back: |
||||
|
onBackPressed(); |
||||
|
break; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void onPageScrolled(int i, float v, int i1) { |
||||
|
|
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void onPageSelected(int i) { |
||||
|
|
||||
|
Fragment currentFragment=fragments.get(i); |
||||
|
if(currentFragment instanceof PennyTestPromptFragment) |
||||
|
{ |
||||
|
onPennyTestPromptPageSelected(); |
||||
|
} |
||||
|
else |
||||
|
{ |
||||
|
onPennyTestOperationPageSelected(); |
||||
|
} |
||||
|
|
||||
|
} |
||||
|
|
||||
|
private void onPennyTestPromptPageSelected() { |
||||
|
Log.d("PennyTestViewPager","Page: Prompt Page Displayed"); |
||||
|
submitBtn.setText("Proceed"); |
||||
|
} |
||||
|
|
||||
|
private void onPennyTestOperationPageSelected() { |
||||
|
Log.d("PennyTestViewPager","Page: Operation Page Displayed"); |
||||
|
submitBtn.setText("Submit"); |
||||
|
|
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void onPageScrollStateChanged(int i) { |
||||
|
|
||||
|
} |
||||
|
} |
@ -1,38 +0,0 @@ |
|||||
package com.gmeremit.online.gmeremittance_native.kycV2.view.pennytest; |
|
||||
|
|
||||
import android.app.Dialog; |
|
||||
import android.graphics.Color; |
|
||||
import android.os.Bundle; |
|
||||
import android.support.annotation.NonNull; |
|
||||
import android.support.annotation.Nullable; |
|
||||
import android.support.design.widget.BottomSheetBehavior; |
|
||||
import android.support.design.widget.BottomSheetDialog; |
|
||||
import android.support.design.widget.BottomSheetDialogFragment; |
|
||||
import android.support.design.widget.CoordinatorLayout; |
|
||||
import android.support.v4.app.DialogFragment; |
|
||||
import android.support.v7.app.AlertDialog; |
|
||||
import android.view.LayoutInflater; |
|
||||
import android.view.View; |
|
||||
import android.view.ViewGroup; |
|
||||
import android.widget.TextView; |
|
||||
|
|
||||
import com.gmeremit.online.gmeremittance_native.R; |
|
||||
import com.gmeremit.online.gmeremittance_native.customwidgets.UserLockBottomSheetBehavior; |
|
||||
|
|
||||
import java.lang.reflect.Field; |
|
||||
|
|
||||
public class PennyTestModalFragment extends DialogFragment { |
|
||||
|
|
||||
|
|
||||
@Override |
|
||||
public Dialog onCreateDialog(Bundle savedInstanceState) { |
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); |
|
||||
View view = getActivity().getLayoutInflater().inflate(R.layout.dialog_country_listing, null); |
|
||||
builder.setView(view); |
|
||||
return builder.create(); |
|
||||
|
|
||||
} |
|
||||
|
|
||||
|
|
||||
|
|
||||
} |
|
@ -0,0 +1,39 @@ |
|||||
|
package com.gmeremit.online.gmeremittance_native.kycV2.view.pennytest; |
||||
|
|
||||
|
import android.os.Bundle; |
||||
|
import android.support.annotation.Nullable; |
||||
|
import android.view.LayoutInflater; |
||||
|
import android.view.View; |
||||
|
import android.view.ViewGroup; |
||||
|
|
||||
|
import com.gmeremit.online.gmeremittance_native.R; |
||||
|
import com.gmeremit.online.gmeremittance_native.base.BaseFragment; |
||||
|
|
||||
|
import butterknife.ButterKnife; |
||||
|
|
||||
|
public class PennyTestOperationFragment extends BaseFragment { |
||||
|
|
||||
|
@Override |
||||
|
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { |
||||
|
return inflater.inflate(R.layout.fragment_penny_test_operation, container, false); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) { |
||||
|
super.onViewCreated(view, savedInstanceState); |
||||
|
ButterKnife.bind(this, view); |
||||
|
init(); |
||||
|
performDefaultAction(savedInstanceState); |
||||
|
} |
||||
|
|
||||
|
private void init() |
||||
|
{ |
||||
|
|
||||
|
} |
||||
|
|
||||
|
|
||||
|
private void performDefaultAction(Bundle savedInstanceState) { |
||||
|
} |
||||
|
|
||||
|
|
||||
|
} |
@ -0,0 +1,39 @@ |
|||||
|
package com.gmeremit.online.gmeremittance_native.kycV2.view.pennytest; |
||||
|
|
||||
|
import android.os.Bundle; |
||||
|
import android.support.annotation.Nullable; |
||||
|
import android.view.LayoutInflater; |
||||
|
import android.view.View; |
||||
|
import android.view.ViewGroup; |
||||
|
|
||||
|
import com.gmeremit.online.gmeremittance_native.R; |
||||
|
import com.gmeremit.online.gmeremittance_native.base.BaseFragment; |
||||
|
|
||||
|
import butterknife.ButterKnife; |
||||
|
|
||||
|
public class PennyTestPromptFragment extends BaseFragment { |
||||
|
|
||||
|
@Override |
||||
|
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { |
||||
|
return inflater.inflate(R.layout.fragment_penny_test_prompt, container, false); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) { |
||||
|
super.onViewCreated(view, savedInstanceState); |
||||
|
ButterKnife.bind(this, view); |
||||
|
init(); |
||||
|
performDefaultAction(savedInstanceState); |
||||
|
} |
||||
|
|
||||
|
private void init() |
||||
|
{ |
||||
|
|
||||
|
} |
||||
|
|
||||
|
|
||||
|
private void performDefaultAction(Bundle savedInstanceState) { |
||||
|
} |
||||
|
|
||||
|
|
||||
|
} |
@ -1,4 +1,8 @@ |
|||||
<?xml version="1.0" encoding="utf-8"?> |
<?xml version="1.0" encoding="utf-8"?> |
||||
<set xmlns:android="http://schemas.android.com/apk/res/android" > |
<set xmlns:android="http://schemas.android.com/apk/res/android" > |
||||
|
|
||||
|
<translate android:fromYDelta="0%" |
||||
|
android:toYDelta="150%" |
||||
|
android:duration="250" |
||||
|
android:interpolator="@android:anim/accelerate_decelerate_interpolator"/> |
||||
</set> |
</set> |
@ -1,4 +1,7 @@ |
|||||
<?xml version="1.0" encoding="utf-8"?> |
<?xml version="1.0" encoding="utf-8"?> |
||||
<set xmlns:android="http://schemas.android.com/apk/res/android"> |
<set xmlns:android="http://schemas.android.com/apk/res/android"> |
||||
|
|
||||
|
<translate android:fromYDelta="110%" |
||||
|
android:toYDelta="0%" |
||||
|
android:duration="250" |
||||
|
android:interpolator="@android:anim/accelerate_decelerate_interpolator"/> |
||||
</set> |
</set> |
@ -0,0 +1,82 @@ |
|||||
|
<?xml version="1.0" encoding="utf-8"?> |
||||
|
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" |
||||
|
xmlns:app="http://schemas.android.com/apk/res-auto" |
||||
|
xmlns:tools="http://schemas.android.com/tools" |
||||
|
android:layout_width="match_parent" |
||||
|
android:orientation="vertical" |
||||
|
android:background="#fff" |
||||
|
android:layout_height="match_parent"> |
||||
|
|
||||
|
<ImageView |
||||
|
android:id="@+id/iv_back" |
||||
|
android:layout_width="wrap_content" |
||||
|
android:layout_height="wrap_content" |
||||
|
android:layout_marginStart="16dp" |
||||
|
android:layout_marginTop="16dp" |
||||
|
android:padding="10dp" |
||||
|
android:src="@drawable/ic_back" |
||||
|
app:layout_constraintStart_toStartOf="parent" |
||||
|
app:layout_constraintTop_toTopOf="parent" /> |
||||
|
|
||||
|
<com.gmeremit.online.gmeremittance_native.customwidgets.SwipeDisabledViewPager |
||||
|
android:id="@+id/penny_test_view_pager" |
||||
|
android:layout_width="match_parent" |
||||
|
android:layout_height="0dp" |
||||
|
android:layout_marginStart="8dp" |
||||
|
android:layout_marginEnd="8dp" |
||||
|
android:layout_marginBottom="8dp" |
||||
|
app:layout_constraintBottom_toTopOf="@+id/progressbar_login_container" |
||||
|
app:layout_constraintEnd_toEndOf="parent" |
||||
|
app:layout_constraintStart_toStartOf="parent" |
||||
|
app:layout_constraintTop_toBottomOf="@+id/iv_back" /> |
||||
|
|
||||
|
<FrameLayout |
||||
|
android:id="@+id/progressbar_login_container" |
||||
|
android:layout_width="match_parent" |
||||
|
android:layout_height="58dp" |
||||
|
android:layout_marginStart="8dp" |
||||
|
android:layout_marginEnd="8dp" |
||||
|
android:layout_marginBottom="8dp" |
||||
|
app:layout_constraintBottom_toTopOf="@+id/textView" |
||||
|
app:layout_constraintEnd_toEndOf="parent" |
||||
|
app:layout_constraintStart_toStartOf="parent"> |
||||
|
|
||||
|
<com.gmeremit.online.gmeremittance_native.customwidgets.GmeButton |
||||
|
android:id="@+id/btn_submit" |
||||
|
android:layout_width="200dp" |
||||
|
android:layout_height="50dp" |
||||
|
android:layout_gravity="center" |
||||
|
android:layout_marginTop="4dp" |
||||
|
android:layout_marginBottom="4dp" |
||||
|
android:background="@drawable/red_morph_button_bg" |
||||
|
android:text="Proceed" |
||||
|
android:textAllCaps="false" |
||||
|
android:textColor="@color/white" |
||||
|
android:textSize="18sp" /> |
||||
|
|
||||
|
<ProgressBar |
||||
|
android:id="@+id/progressbar_login" |
||||
|
android:layout_width="40dp" |
||||
|
android:layout_height="40dp" |
||||
|
android:layout_gravity="center" |
||||
|
android:indeterminate="true" /> |
||||
|
|
||||
|
</FrameLayout> |
||||
|
|
||||
|
<com.gmeremit.online.gmeremittance_native.customwidgets.GmeTextView |
||||
|
android:id="@+id/textView" |
||||
|
android:layout_width="match_parent" |
||||
|
android:layout_height="wrap_content" |
||||
|
android:layout_gravity="center_horizontal" |
||||
|
android:layout_marginBottom="16dp" |
||||
|
android:gravity="center" |
||||
|
android:paddingTop="5dp" |
||||
|
android:paddingBottom="5dp" |
||||
|
android:text="Skip for now" |
||||
|
android:textSize="14sp" |
||||
|
app:layout_constraintBottom_toBottomOf="parent" |
||||
|
app:layout_constraintEnd_toEndOf="parent" |
||||
|
app:layout_constraintStart_toStartOf="parent" /> |
||||
|
|
||||
|
|
||||
|
</android.support.constraint.ConstraintLayout> |
@ -0,0 +1,25 @@ |
|||||
|
<?xml version="1.0" encoding="utf-8"?> |
||||
|
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" |
||||
|
android:layout_width="match_parent" |
||||
|
android:layout_height="match_parent" |
||||
|
android:background="@color/red" |
||||
|
xmlns:app="http://schemas.android.com/apk/res-auto"> |
||||
|
|
||||
|
<TextView |
||||
|
android:id="@+id/textView2" |
||||
|
android:layout_width="wrap_content" |
||||
|
android:layout_height="wrap_content" |
||||
|
android:layout_marginStart="8dp" |
||||
|
android:layout_marginTop="8dp" |
||||
|
android:layout_marginEnd="8dp" |
||||
|
android:layout_marginBottom="8dp" |
||||
|
android:textSize="21sp" |
||||
|
android:gravity="center" |
||||
|
android:textColor="@color/white" |
||||
|
android:text="Penny test is about to be completed" |
||||
|
app:layout_constraintBottom_toBottomOf="parent" |
||||
|
app:layout_constraintEnd_toEndOf="parent" |
||||
|
app:layout_constraintStart_toStartOf="parent" |
||||
|
app:layout_constraintTop_toTopOf="parent" /> |
||||
|
|
||||
|
</android.support.constraint.ConstraintLayout> |
Write
Preview
Loading…
Cancel
Save
Reference in new issue