Package com.uos.uos_mobile.activity
Class PayActivity
- java.lang.Object
-
- android.content.Context
-
- android.content.ContextWrapper
-
- android.view.ContextThemeWrapper
-
- android.app.Activity
-
- androidx.core.app.ComponentActivity
-
- androidx.activity.ComponentActivity
-
- androidx.fragment.app.FragmentActivity
-
- androidx.appcompat.app.AppCompatActivity
-
- com.uos.uos_mobile.activity.UosActivity
-
- com.uos.uos_mobile.activity.PayActivity
-
- All Implemented Interfaces:
android.content.ComponentCallbacks
,android.content.ComponentCallbacks2
,android.view.KeyEvent.Callback
,android.view.LayoutInflater.Factory
,android.view.LayoutInflater.Factory2
,android.view.View.OnCreateContextMenuListener
,android.view.Window.Callback
,androidx.activity.contextaware.ContextAware
,androidx.activity.OnBackPressedDispatcherOwner
,androidx.activity.result.ActivityResultCaller
,androidx.activity.result.ActivityResultRegistryOwner
,androidx.appcompat.app.ActionBarDrawerToggle.DelegateProvider
,androidx.appcompat.app.AppCompatCallback
,androidx.core.app.ActivityCompat.OnRequestPermissionsResultCallback
,androidx.core.app.ActivityCompat.RequestPermissionsRequestCodeValidator
,androidx.core.app.TaskStackBuilder.SupportParentable
,androidx.core.view.KeyEventDispatcher.Component
,androidx.lifecycle.HasDefaultViewModelProviderFactory
,androidx.lifecycle.LifecycleOwner
,androidx.lifecycle.ViewModelStoreOwner
,androidx.savedstate.SavedStateRegistryOwner
public class PayActivity extends UosActivity
QR코드를 인식 후 데이터를 추출하는 Activity.
xml: activity_qrrecognition.xml
Intent로 전달된 BasketManager로 결제될 상품들에 대한 정보를 표시합니다. 장바구니 목록 아래에는 카드정보를 입력하는 란이 있으며 하단에 있는 결제하기 버튼을 누를 시 주문이 진행됩니다.- Since:
- 1.0.0
- Author:
- Sohn Young Jin
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private class
PayActivity.GetCard
카드정보를 외부서버로부터 불러옵니다.
-
Field Summary
Fields Modifier and Type Field Description private BasketManager
basketManager
Intent로 전달된 BasketManager.private CardItem
cardItem
카드정보를 담고 있는 CardItem.private androidx.constraintlayout.widget.ConstraintLayout
clPayCard
터치 시 카드정보를 수정할 수 있는 ConstraintLayout.private androidx.constraintlayout.widget.ConstraintLayout
clPayPay
터치 시 결제를 진행하는 ConstraintLayout.private androidx.appcompat.widget.AppCompatImageButton
ibtnPayBack
결제 Activity를 종료하는 AppCompatImageButton.private androidx.appcompat.widget.AppCompatImageView
ivPayCardBackground
카드 배경을 표시하는 AppCompatImageView.private PayAdapter
payAdapter
결제할 장바구니 목록을 관리하는 PayAdapter.private androidx.core.widget.ContentLoadingProgressBar
pbPayLoading
결제 진행 시 표시할 ContentLoadingProgressBar.private androidx.recyclerview.widget.RecyclerView
rvPayOrderList
장바구니에 있는 목록을 보여주는 RecyclerView.private com.google.android.material.textfield.TextInputLayout
tilPayCardPw
카드 비밀번호 입력란 TextInputLayout.private androidx.appcompat.widget.AppCompatTextView
tvPayCardNum
카드번호를 표시하는 AppCompatTextView.private androidx.appcompat.widget.AppCompatTextView
tvPayCompanyName
주문하려는 매장명(회사명)을 표시하는 AppCompatTextView.private androidx.appcompat.widget.AppCompatTextView
tvPayNoCard
카드가 없을 때 보일 문자열을 담고 있는 AppCompatTextView.private androidx.appcompat.widget.AppCompatTextView
tvPayPay
결제 전 버튼에 표시할 AppCompatTextView.private androidx.appcompat.widget.AppCompatTextView
tvPayTotalPrice
결제할 총 금액을 표시하는 AppCompatTextView.private androidx.appcompat.widget.AppCompatTextView
tvPayUserName
사용자 이름을 표시하는 AppCompatTextView.-
Fields inherited from class com.uos.uos_mobile.activity.UosActivity
activities
-
Fields inherited from class android.app.Activity
DEFAULT_KEYS_DIALER, DEFAULT_KEYS_DISABLE, DEFAULT_KEYS_SEARCH_GLOBAL, DEFAULT_KEYS_SEARCH_LOCAL, DEFAULT_KEYS_SHORTCUT, FOCUSED_STATE_SET, RESULT_CANCELED, RESULT_FIRST_USER, RESULT_OK
-
Fields inherited from class android.content.Context
ACCESSIBILITY_SERVICE, ACCOUNT_SERVICE, ACTIVITY_SERVICE, ALARM_SERVICE, APP_OPS_SERVICE, APPWIDGET_SERVICE, AUDIO_SERVICE, BATTERY_SERVICE, BIND_ABOVE_CLIENT, BIND_ADJUST_WITH_ACTIVITY, BIND_ALLOW_OOM_MANAGEMENT, BIND_AUTO_CREATE, BIND_DEBUG_UNBIND, BIND_EXTERNAL_SERVICE, BIND_IMPORTANT, BIND_INCLUDE_CAPABILITIES, BIND_NOT_FOREGROUND, BIND_NOT_PERCEPTIBLE, BIND_WAIVE_PRIORITY, BIOMETRIC_SERVICE, BLOB_STORE_SERVICE, BLUETOOTH_SERVICE, CAMERA_SERVICE, CAPTIONING_SERVICE, CARRIER_CONFIG_SERVICE, CLIPBOARD_SERVICE, COMPANION_DEVICE_SERVICE, CONNECTIVITY_DIAGNOSTICS_SERVICE, CONNECTIVITY_SERVICE, CONSUMER_IR_SERVICE, CONTEXT_IGNORE_SECURITY, CONTEXT_INCLUDE_CODE, CONTEXT_RESTRICTED, CROSS_PROFILE_APPS_SERVICE, DEVICE_POLICY_SERVICE, DISPLAY_SERVICE, DOWNLOAD_SERVICE, DROPBOX_SERVICE, EUICC_SERVICE, FILE_INTEGRITY_SERVICE, FINGERPRINT_SERVICE, HARDWARE_PROPERTIES_SERVICE, INPUT_METHOD_SERVICE, INPUT_SERVICE, IPSEC_SERVICE, JOB_SCHEDULER_SERVICE, KEYGUARD_SERVICE, LAUNCHER_APPS_SERVICE, LAYOUT_INFLATER_SERVICE, LOCATION_SERVICE, MEDIA_PROJECTION_SERVICE, MEDIA_ROUTER_SERVICE, MEDIA_SESSION_SERVICE, MIDI_SERVICE, MODE_APPEND, MODE_ENABLE_WRITE_AHEAD_LOGGING, MODE_MULTI_PROCESS, MODE_NO_LOCALIZED_COLLATORS, MODE_PRIVATE, MODE_WORLD_READABLE, MODE_WORLD_WRITEABLE, NETWORK_STATS_SERVICE, NFC_SERVICE, NOTIFICATION_SERVICE, NSD_SERVICE, POWER_SERVICE, PRINT_SERVICE, RECEIVER_VISIBLE_TO_INSTANT_APPS, RESTRICTIONS_SERVICE, ROLE_SERVICE, SEARCH_SERVICE, SENSOR_SERVICE, SHORTCUT_SERVICE, STORAGE_SERVICE, STORAGE_STATS_SERVICE, SYSTEM_HEALTH_SERVICE, TELECOM_SERVICE, TELEPHONY_IMS_SERVICE, TELEPHONY_SERVICE, TELEPHONY_SUBSCRIPTION_SERVICE, TEXT_CLASSIFICATION_SERVICE, TEXT_SERVICES_MANAGER_SERVICE, TV_INPUT_SERVICE, UI_MODE_SERVICE, USAGE_STATS_SERVICE, USB_SERVICE, USER_SERVICE, VIBRATOR_SERVICE, VPN_MANAGEMENT_SERVICE, WALLPAPER_SERVICE, WIFI_AWARE_SERVICE, WIFI_P2P_SERVICE, WIFI_RTT_RANGING_SERVICE, WIFI_SERVICE, WINDOW_SERVICE
-
-
Constructor Summary
Constructors Constructor Description PayActivity()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
checkPayEnable()
결제가 가능한 상태인지 확인합니다.protected void
init()
Activity 실행 시 최초 실행해야하는 코드 및 변수 초기화를 담당하고 있는 함수입니다. onCreate() 함수의 가장 마지막에서 실행됩니다.private void
removeCardData()
카드정보를 PayActivity에서 표시하지 않습니다.private void
setCardData(java.lang.String cardNum)
카드정보를 PayActivity에 표시합니다.-
Methods inherited from class com.uos.uos_mobile.activity.UosActivity
clear, get, get, onCreate, onDestroy, revertToActivity, startFromActivity
-
Methods inherited from class androidx.appcompat.app.AppCompatActivity
addContentView, attachBaseContext, closeOptionsMenu, dispatchKeyEvent, findViewById, getDelegate, getDrawerToggleDelegate, getMenuInflater, getResources, getSupportActionBar, getSupportParentActivityIntent, invalidateOptionsMenu, onConfigurationChanged, onContentChanged, onCreateSupportNavigateUpTaskStack, onKeyDown, onMenuItemSelected, onMenuOpened, onNightModeChanged, onPanelClosed, onPostCreate, onPostResume, onPrepareSupportNavigateUpTaskStack, onStart, onStop, onSupportActionModeFinished, onSupportActionModeStarted, onSupportContentChanged, onSupportNavigateUp, onTitleChanged, onWindowStartingSupportActionMode, openOptionsMenu, setContentView, setContentView, setContentView, setSupportActionBar, setSupportProgress, setSupportProgressBarIndeterminate, setSupportProgressBarIndeterminateVisibility, setSupportProgressBarVisibility, setTheme, startSupportActionMode, supportInvalidateOptionsMenu, supportNavigateUpTo, supportRequestWindowFeature, supportShouldUpRecreateTask
-
Methods inherited from class androidx.fragment.app.FragmentActivity
dump, getSupportFragmentManager, getSupportLoaderManager, onActivityResult, onAttachFragment, onCreatePanelMenu, onCreateView, onCreateView, onLowMemory, onMultiWindowModeChanged, onNewIntent, onPause, onPictureInPictureModeChanged, onPrepareOptionsPanel, onPreparePanel, onRequestPermissionsResult, onResume, onResumeFragments, onStateNotSaved, setEnterSharedElementCallback, setExitSharedElementCallback, startActivityFromFragment, startActivityFromFragment, startIntentSenderFromFragment, supportFinishAfterTransition, supportPostponeEnterTransition, supportStartPostponedEnterTransition, validateRequestPermissionsRequestCode
-
Methods inherited from class androidx.activity.ComponentActivity
addOnContextAvailableListener, getActivityResultRegistry, getDefaultViewModelProviderFactory, getLastCustomNonConfigurationInstance, getLifecycle, getOnBackPressedDispatcher, getSavedStateRegistry, getViewModelStore, onBackPressed, onRetainCustomNonConfigurationInstance, onRetainNonConfigurationInstance, onSaveInstanceState, peekAvailableContext, registerForActivityResult, registerForActivityResult, removeOnContextAvailableListener, reportFullyDrawn, startActivityForResult, startActivityForResult, startIntentSenderForResult, startIntentSenderForResult
-
Methods inherited from class androidx.core.app.ComponentActivity
dispatchKeyShortcutEvent, getExtraData, putExtraData, superDispatchKeyEvent
-
Methods inherited from class android.app.Activity
closeContextMenu, createPendingResult, dismissDialog, dismissKeyboardShortcutsHelper, dispatchGenericMotionEvent, dispatchPopulateAccessibilityEvent, dispatchTouchEvent, dispatchTrackballEvent, enterPictureInPictureMode, enterPictureInPictureMode, finish, finishActivity, finishActivityFromChild, finishAffinity, finishAfterTransition, finishAndRemoveTask, finishFromChild, getActionBar, getApplication, getCallingActivity, getCallingPackage, getChangingConfigurations, getComponentName, getContentScene, getContentTransitionManager, getCurrentFocus, getFragmentManager, getIntent, getLastNonConfigurationInstance, getLayoutInflater, getLoaderManager, getLocalClassName, getMaxNumPictureInPictureActions, getMediaController, getParent, getParentActivityIntent, getPreferences, getReferrer, getRequestedOrientation, getSearchEvent, getSystemService, getTaskId, getTitle, getTitleColor, getVoiceInteractor, getVolumeControlStream, getWindow, getWindowManager, hasWindowFocus, isActivityTransitionRunning, isChangingConfigurations, isChild, isDestroyed, isFinishing, isImmersive, isInMultiWindowMode, isInPictureInPictureMode, isLocalVoiceInteractionSupported, isTaskRoot, isVoiceInteraction, isVoiceInteractionRoot, managedQuery, moveTaskToBack, navigateUpTo, navigateUpToFromChild, onActionModeFinished, onActionModeStarted, onActivityReenter, onApplyThemeResource, onAttachedToWindow, onAttachFragment, onChildTitleChanged, onContextItemSelected, onContextMenuClosed, onCreate, onCreateContextMenu, onCreateDescription, onCreateDialog, onCreateDialog, onCreateNavigateUpTaskStack, onCreateOptionsMenu, onCreatePanelView, onCreateThumbnail, onDetachedFromWindow, onEnterAnimationComplete, onGenericMotionEvent, onGetDirectActions, onKeyLongPress, onKeyMultiple, onKeyShortcut, onKeyUp, onLocalVoiceInteractionStarted, onLocalVoiceInteractionStopped, onMultiWindowModeChanged, onNavigateUp, onNavigateUpFromChild, onOptionsItemSelected, onOptionsMenuClosed, onPerformDirectAction, onPictureInPictureModeChanged, onPictureInPictureRequested, onPostCreate, onPrepareDialog, onPrepareDialog, onPrepareNavigateUpTaskStack, onPrepareOptionsMenu, onProvideAssistContent, onProvideAssistData, onProvideKeyboardShortcuts, onProvideReferrer, onRestart, onRestoreInstanceState, onRestoreInstanceState, onSaveInstanceState, onSearchRequested, onSearchRequested, onTopResumedActivityChanged, onTouchEvent, onTrackballEvent, onTrimMemory, onUserInteraction, onUserLeaveHint, onVisibleBehindCanceled, onWindowAttributesChanged, onWindowFocusChanged, onWindowStartingActionMode, onWindowStartingActionMode, openContextMenu, overridePendingTransition, postponeEnterTransition, recreate, registerActivityLifecycleCallbacks, registerForContextMenu, releaseInstance, removeDialog, requestDragAndDropPermissions, requestPermissions, requestShowKeyboardShortcuts, requestVisibleBehind, requestWindowFeature, requireViewById, runOnUiThread, setActionBar, setContentTransitionManager, setDefaultKeyMode, setEnterSharedElementCallback, setExitSharedElementCallback, setFeatureDrawable, setFeatureDrawableAlpha, setFeatureDrawableResource, setFeatureDrawableUri, setFinishOnTouchOutside, setImmersive, setInheritShowWhenLocked, setIntent, setLocusContext, setMediaController, setPictureInPictureParams, setProgress, setProgressBarIndeterminate, setProgressBarIndeterminateVisibility, setProgressBarVisibility, setRequestedOrientation, setResult, setResult, setSecondaryProgress, setShowWhenLocked, setTaskDescription, setTitle, setTitle, setTitleColor, setTranslucent, setTurnScreenOn, setVisible, setVolumeControlStream, setVrModeEnabled, shouldShowRequestPermissionRationale, shouldUpRecreateTask, showAssist, showDialog, showDialog, showLockTaskEscapeMessage, startActionMode, startActionMode, startActivities, startActivities, startActivity, startActivity, startActivityFromChild, startActivityFromChild, startActivityFromFragment, startActivityFromFragment, startActivityIfNeeded, startActivityIfNeeded, startIntentSender, startIntentSender, startIntentSenderFromChild, startIntentSenderFromChild, startLocalVoiceInteraction, startLockTask, startManagingCursor, startNextMatchingActivity, startNextMatchingActivity, startPostponedEnterTransition, startSearch, stopLocalVoiceInteraction, stopLockTask, stopManagingCursor, takeKeyEvents, triggerSearch, unregisterActivityLifecycleCallbacks, unregisterForContextMenu
-
Methods inherited from class android.view.ContextThemeWrapper
applyOverrideConfiguration, getAssets, getTheme, setTheme
-
Methods inherited from class android.content.ContextWrapper
bindIsolatedService, bindService, bindService, bindServiceAsUser, checkCallingOrSelfPermission, checkCallingOrSelfUriPermission, checkCallingPermission, checkCallingUriPermission, checkPermission, checkSelfPermission, checkUriPermission, checkUriPermission, clearWallpaper, createAttributionContext, createConfigurationContext, createContextForSplit, createDeviceProtectedStorageContext, createDisplayContext, createPackageContext, createWindowContext, databaseList, deleteDatabase, deleteFile, deleteSharedPreferences, enforceCallingOrSelfPermission, enforceCallingOrSelfUriPermission, enforceCallingPermission, enforceCallingUriPermission, enforcePermission, enforceUriPermission, enforceUriPermission, fileList, getApplicationContext, getApplicationInfo, getAttributionTag, getBaseContext, getCacheDir, getClassLoader, getCodeCacheDir, getContentResolver, getDatabasePath, getDataDir, getDir, getDisplay, getExternalCacheDir, getExternalCacheDirs, getExternalFilesDir, getExternalFilesDirs, getExternalMediaDirs, getFilesDir, getFileStreamPath, getMainExecutor, getMainLooper, getNoBackupFilesDir, getObbDir, getObbDirs, getOpPackageName, getPackageCodePath, getPackageManager, getPackageName, getPackageResourcePath, getSharedPreferences, getSystemServiceName, getWallpaper, getWallpaperDesiredMinimumHeight, getWallpaperDesiredMinimumWidth, grantUriPermission, isDeviceProtectedStorage, isRestricted, moveDatabaseFrom, moveSharedPreferencesFrom, openFileInput, openFileOutput, openOrCreateDatabase, openOrCreateDatabase, peekWallpaper, registerReceiver, registerReceiver, registerReceiver, registerReceiver, removeStickyBroadcast, removeStickyBroadcastAsUser, revokeUriPermission, revokeUriPermission, sendBroadcast, sendBroadcast, sendBroadcastAsUser, sendBroadcastAsUser, sendOrderedBroadcast, sendOrderedBroadcast, sendOrderedBroadcast, sendOrderedBroadcast, sendOrderedBroadcastAsUser, sendStickyBroadcast, sendStickyBroadcastAsUser, sendStickyOrderedBroadcast, sendStickyOrderedBroadcastAsUser, setWallpaper, setWallpaper, startForegroundService, startInstrumentation, startService, stopService, unbindService, unregisterReceiver, updateServiceGroup
-
Methods inherited from class android.content.Context
getColor, getColorStateList, getDrawable, getString, getString, getSystemService, getText, obtainStyledAttributes, obtainStyledAttributes, obtainStyledAttributes, obtainStyledAttributes, registerComponentCallbacks, sendBroadcastWithMultiplePermissions, unregisterComponentCallbacks
-
-
-
-
Field Detail
-
ibtnPayBack
private androidx.appcompat.widget.AppCompatImageButton ibtnPayBack
결제 Activity를 종료하는 AppCompatImageButton.
-
tvPayCompanyName
private androidx.appcompat.widget.AppCompatTextView tvPayCompanyName
주문하려는 매장명(회사명)을 표시하는 AppCompatTextView.
-
rvPayOrderList
private androidx.recyclerview.widget.RecyclerView rvPayOrderList
장바구니에 있는 목록을 보여주는 RecyclerView.
-
tvPayTotalPrice
private androidx.appcompat.widget.AppCompatTextView tvPayTotalPrice
결제할 총 금액을 표시하는 AppCompatTextView.
-
tvPayNoCard
private androidx.appcompat.widget.AppCompatTextView tvPayNoCard
카드가 없을 때 보일 문자열을 담고 있는 AppCompatTextView.
-
clPayCard
private androidx.constraintlayout.widget.ConstraintLayout clPayCard
터치 시 카드정보를 수정할 수 있는 ConstraintLayout.
-
ivPayCardBackground
private androidx.appcompat.widget.AppCompatImageView ivPayCardBackground
카드 배경을 표시하는 AppCompatImageView.
-
tvPayUserName
private androidx.appcompat.widget.AppCompatTextView tvPayUserName
사용자 이름을 표시하는 AppCompatTextView.
-
tvPayCardNum
private androidx.appcompat.widget.AppCompatTextView tvPayCardNum
카드번호를 표시하는 AppCompatTextView.
-
tilPayCardPw
private com.google.android.material.textfield.TextInputLayout tilPayCardPw
카드 비밀번호 입력란 TextInputLayout.
-
clPayPay
private androidx.constraintlayout.widget.ConstraintLayout clPayPay
터치 시 결제를 진행하는 ConstraintLayout.
-
tvPayPay
private androidx.appcompat.widget.AppCompatTextView tvPayPay
결제 전 버튼에 표시할 AppCompatTextView.
-
pbPayLoading
private androidx.core.widget.ContentLoadingProgressBar pbPayLoading
결제 진행 시 표시할 ContentLoadingProgressBar.
-
payAdapter
private PayAdapter payAdapter
결제할 장바구니 목록을 관리하는 PayAdapter.
-
cardItem
private CardItem cardItem
카드정보를 담고 있는 CardItem.
-
basketManager
private BasketManager basketManager
Intent로 전달된 BasketManager.
-
-
Method Detail
-
init
protected void init()
Description copied from class:UosActivity
Activity 실행 시 최초 실행해야하는 코드 및 변수 초기화를 담당하고 있는 함수입니다. onCreate() 함수의 가장 마지막에서 실행됩니다.- Specified by:
init
in classUosActivity
-
checkPayEnable
public void checkPayEnable()
결제가 가능한 상태인지 확인합니다. 카드정보가 등록되어있는지, 카드 비밀번호가 입력 패턴에 맞는지 확인하며 조건을 모두 만족시킬 경우 결제버튼을 활성화, 그렇지 않을 경우 비활성화시킵니다.
-
setCardData
private void setCardData(java.lang.String cardNum)
카드정보를 PayActivity에 표시합니다. 카드정보를 성공적으로 불러왔을 때 사용합니다.- Parameters:
cardNum
- 카드번호.
-
removeCardData
private void removeCardData()
카드정보를 PayActivity에서 표시하지 않습니다. 등록된 카드정보가 없거나 카드정보를 불러오는 도중 오류가 발생했을 때 사용합니다.
-
-