@Nullable
@Override
public View onCreateView(
@NonNull LayoutInflater inflater,
@Nullable ViewGroup container,
@Nullable Bundle savedInstanceState
) {
View view = inflater.inflate(R.layout.fragment_main, container, false);
SecureEditText entryEditPin = (SecureEditText)view.findViewById(R.id.pin_entry);
SecureEditText confirmEditPin = (SecureEditText)view.findViewById(R.id.pin_confirm);
PINEntryUI.PINEventListener listener = new PINEntryUI.PINEventListener() {
@Override
public void onPinEvent(PINEntryUI.PINEvent pinEvent, String additionalInfo) {
switch (pinEvent){
case FIRST_ENTRY_FINISH:
// switch focus to confirmEditPin
break;
case PIN_MATCH:
// enable Continue/Submit button
break;
case PIN_MISMATCH:
// disable Continue/Submit button and show error of PIN_MISMATCH
break;
}
}
};
String cardID = ""; // obtained e.g. from server
ChangePINOptions options = new ChangePINOptions(4);
pinEntryUI = d1Task.changePIN(cardID, entryEditPin, confirmEditPin, options, listener);
Button button = (Button)view.findViewById(R.id.pin_submit);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
pinEntryUI.submit(new D1Task.Callback<Void>() {
@Override
public void onSuccess(final Void data) {
}
@Override
public void onError(@NonNull final D1Exception exception) {
}
});
}
});
return view;
}