package com.quemb.qmbform.view; import com.quemb.qmbform.descriptor.RowDescriptor; import com.quemb.qmbform.descriptor.Value; import android.content.Context; import android.text.InputType; import android.util.Log; import android.widget.EditText; /** * Created by tonimoeckel on 15.07.14. */ public class FormEditIntegerFieldCell extends FormEditTextFieldCell { private static final String TAG = "FormEditIntegerCell"; private EditText mEditView; public FormEditIntegerFieldCell(Context context, RowDescriptor rowDescriptor) { super(context, rowDescriptor); } @Override protected void init() { super.init(); mEditView = getEditView(); mEditView.setInputType(InputType.TYPE_CLASS_NUMBER); } @Override protected void updateEditView() { @SuppressWarnings("unchecked") Value<Integer> value = (Value<Integer>) getRowDescriptor().getValue(); if (value != null) { String valueString = String.valueOf(value.getValue()); getEditView().setText(valueString); } } protected void onEditTextChanged(String string) { try { Integer value = Integer.parseInt(string); onValueChanged(new Value<Integer>(value)); } catch (NumberFormatException e) { Log.e(TAG, e.getMessage(), e); } } public EditText getEditText() { return mEditView; } }