mirror of
https://github.com/oliexdev/openScale.git
synced 2025-08-07 01:06:57 +02:00
refactored data entry activity to dynamically set measurements
This commit is contained in:
@@ -29,7 +29,7 @@ import android.view.Window;
|
||||
import android.widget.Button;
|
||||
import android.widget.DatePicker;
|
||||
import android.widget.EditText;
|
||||
import android.widget.TableRow;
|
||||
import android.widget.TableLayout;
|
||||
import android.widget.TextView;
|
||||
import android.widget.TimePicker;
|
||||
import android.widget.Toast;
|
||||
@@ -37,12 +37,12 @@ import android.widget.Toast;
|
||||
import com.health.openscale.R;
|
||||
import com.health.openscale.core.OpenScale;
|
||||
import com.health.openscale.core.ScaleData;
|
||||
import com.health.openscale.core.ScaleUser;
|
||||
|
||||
import java.text.DateFormat;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Calendar;
|
||||
import java.util.Collections;
|
||||
import java.util.Date;
|
||||
import java.util.ListIterator;
|
||||
|
||||
@@ -50,17 +50,21 @@ public class DataEntryActivity extends Activity {
|
||||
public static final int ADD_DATA_REQUEST = 0;
|
||||
public static final int EDIT_DATA_REQUEST = 1;
|
||||
|
||||
private TextView txtDataNr;
|
||||
private EditText txtWeight;
|
||||
private EditText txtFat;
|
||||
private EditText txtWater;
|
||||
private EditText txtMuscle;
|
||||
private EditText txtWaist;
|
||||
private EditText txtHip;
|
||||
private EditText txtDate;
|
||||
private EditText txtTime;
|
||||
private ArrayList<MeasurementView> dataEntryMeasurements;
|
||||
private TableLayout tableLayoutDataEntry;
|
||||
|
||||
private WeightMeasurementView weightMeasurement;
|
||||
private WaterMeasurementView waterMeasurement;
|
||||
private MuscleMeasurementView muscleMeasurement;
|
||||
private FatMeasurementView fatMeasurement;
|
||||
private WaistMeasurementView waistMeasurement;
|
||||
private HipMeasurementView hipMeasurement;
|
||||
|
||||
private EditText txtDate;
|
||||
private EditText txtTime;
|
||||
private EditText txtComment;
|
||||
|
||||
private TextView txtDataNr;
|
||||
private Button btnAdd;
|
||||
private Button btnOk;
|
||||
private Button btnCancel;
|
||||
@@ -85,18 +89,35 @@ public class DataEntryActivity extends Activity {
|
||||
|
||||
context = this;
|
||||
|
||||
tableLayoutDataEntry = (TableLayout) findViewById(R.id.tableLayoutDataEntry);
|
||||
|
||||
weightMeasurement = new WeightMeasurementView(context);
|
||||
waterMeasurement = new WaterMeasurementView(context);
|
||||
muscleMeasurement = new MuscleMeasurementView(context);
|
||||
fatMeasurement = new FatMeasurementView(context);
|
||||
waistMeasurement = new WaistMeasurementView(context);
|
||||
hipMeasurement = new HipMeasurementView(context);
|
||||
|
||||
dataEntryMeasurements = new ArrayList<>();
|
||||
dataEntryMeasurements.add(weightMeasurement);
|
||||
dataEntryMeasurements.add(waterMeasurement);
|
||||
dataEntryMeasurements.add(muscleMeasurement);
|
||||
dataEntryMeasurements.add(fatMeasurement);
|
||||
dataEntryMeasurements.add(waistMeasurement);
|
||||
dataEntryMeasurements.add(hipMeasurement);
|
||||
|
||||
Collections.reverse(dataEntryMeasurements);
|
||||
|
||||
for (MeasurementView measuremt : dataEntryMeasurements) {
|
||||
tableLayoutDataEntry.addView(measuremt, 0);
|
||||
measuremt.setEditMode(true);
|
||||
}
|
||||
|
||||
txtDataNr = (TextView) findViewById(R.id.txtDataNr);
|
||||
txtWeight = (EditText) findViewById(R.id.txtWeight);
|
||||
txtWeight.setHint(getResources().getString(R.string.info_enter_value_unit) + " " + ScaleUser.UNIT_STRING[OpenScale.getInstance(context).getSelectedScaleUser().scale_unit]);
|
||||
txtFat = (EditText) findViewById(R.id.txtFat);
|
||||
txtWater = (EditText) findViewById(R.id.txtWater);
|
||||
txtMuscle = (EditText) findViewById(R.id.txtMuscle);
|
||||
txtWaist = (EditText) findViewById(R.id.txtWaist);
|
||||
txtHip = (EditText) findViewById(R.id.txtHip);
|
||||
txtDate = (EditText) findViewById(R.id.txtDate);
|
||||
txtTime = (EditText) findViewById(R.id.txtTime);
|
||||
txtTime = (EditText) findViewById(R.id.txtTime);
|
||||
txtComment = (EditText) findViewById(R.id.txtComment);
|
||||
|
||||
|
||||
btnAdd = (Button) findViewById(R.id.btnAdd);
|
||||
btnOk = (Button) findViewById(R.id.btnOk);
|
||||
btnCancel = (Button) findViewById(R.id.btnCancel);
|
||||
@@ -117,33 +138,13 @@ public class DataEntryActivity extends Activity {
|
||||
updateOnView();
|
||||
}
|
||||
|
||||
|
||||
private void updateOnView()
|
||||
{
|
||||
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
|
||||
|
||||
if(!prefs.getBoolean("fatEnable", true)) {
|
||||
TableRow row = (TableRow)findViewById(R.id.tableRowFat);
|
||||
row.setVisibility(View.GONE);
|
||||
}
|
||||
|
||||
if(!prefs.getBoolean("muscleEnable", true)) {
|
||||
TableRow row = (TableRow)findViewById(R.id.tableRowMuscle);
|
||||
row.setVisibility(View.GONE);
|
||||
}
|
||||
|
||||
if(!prefs.getBoolean("waterEnable", true)) {
|
||||
TableRow row = (TableRow)findViewById(R.id.tableRowWater);
|
||||
row.setVisibility(View.GONE);
|
||||
}
|
||||
|
||||
if(!prefs.getBoolean("waistEnable", false)) {
|
||||
TableRow row = (TableRow)findViewById(R.id.tableRowWaist);
|
||||
row.setVisibility(View.GONE);
|
||||
}
|
||||
|
||||
if(!prefs.getBoolean("hipEnable", false)) {
|
||||
TableRow row = (TableRow)findViewById(R.id.tableRowHip);
|
||||
row.setVisibility(View.GONE);
|
||||
for (MeasurementView measuremt : dataEntryMeasurements) {
|
||||
measuremt.updatePreferences(prefs);
|
||||
}
|
||||
|
||||
if (getIntent().getExtras().getInt("mode") == EDIT_DATA_REQUEST) {
|
||||
@@ -171,13 +172,10 @@ public class DataEntryActivity extends Activity {
|
||||
ScaleData editScaleData = openScale.getScaleData(id);
|
||||
|
||||
txtDataNr.setText(DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.SHORT).format(editScaleData.date_time));
|
||||
txtWeight.setText(editScaleData.weight+"");
|
||||
txtFat.setText(editScaleData.fat+"");
|
||||
txtWater.setText(editScaleData.water+"");
|
||||
txtMuscle.setText(editScaleData.muscle+"");
|
||||
txtWaist.setText(editScaleData.waist+"");
|
||||
txtHip.setText(editScaleData.hip+"");
|
||||
txtComment.setText(editScaleData.comment);
|
||||
|
||||
for (MeasurementView measuremt : dataEntryMeasurements) {
|
||||
measuremt.updateValue(editScaleData);
|
||||
}
|
||||
|
||||
txtDate.setText(dateFormat.format(editScaleData.date_time));
|
||||
txtTime.setText(timeFormat.format(editScaleData.date_time));
|
||||
@@ -196,114 +194,36 @@ public class DataEntryActivity extends Activity {
|
||||
{
|
||||
ScaleData lastScaleData = OpenScale.getInstance(this).getScaleDataList().get(0);
|
||||
|
||||
txtFat.setText(Float.toString(lastScaleData.fat));
|
||||
txtWater.setText(Float.toString(lastScaleData.water));
|
||||
txtMuscle.setText(Float.toString(lastScaleData.muscle));
|
||||
txtWaist.setText(Float.toString(lastScaleData.waist));
|
||||
txtHip.setText(Float.toString(lastScaleData.hip));
|
||||
// show as default last scale data
|
||||
for (MeasurementView measuremt : dataEntryMeasurements) {
|
||||
measuremt.updateValue(lastScaleData);
|
||||
}
|
||||
} else {
|
||||
txtFat.setText(Float.toString(0.0f));
|
||||
txtWater.setText(Float.toString(0.0f));
|
||||
txtMuscle.setText(Float.toString(0.0f));
|
||||
txtWaist.setText(Float.toString(0.0f));
|
||||
txtHip.setText(Float.toString(0.0f));
|
||||
// show default values
|
||||
for (MeasurementView measuremt : dataEntryMeasurements) {
|
||||
measuremt.updateValue(new ScaleData());
|
||||
}
|
||||
}
|
||||
|
||||
txtDate.setText(dateFormat.format(new Date()));
|
||||
txtTime.setText(timeFormat.format(new Date()));
|
||||
}
|
||||
|
||||
private boolean validateInput()
|
||||
private boolean validateAllInput()
|
||||
{
|
||||
boolean validate = true;
|
||||
boolean isValidate = true;
|
||||
|
||||
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
|
||||
|
||||
if (prefs.getBoolean("weightEnable", true)) {
|
||||
if (txtWeight.getText().toString().length() == 0) {
|
||||
txtWeight.setError(getResources().getString(R.string.error_weight_value_required));
|
||||
validate = false;
|
||||
} else if (!isInRange(txtWeight.getText().toString(), 300)) {
|
||||
txtWeight.setError(getResources().getString(R.string.error_value_range_0_300));
|
||||
validate = false;
|
||||
for (MeasurementView measuremt : dataEntryMeasurements) {
|
||||
if (!measuremt.validateInput()) {
|
||||
isValidate = false;
|
||||
}
|
||||
}
|
||||
|
||||
if (prefs.getBoolean("fatEnable", true)) {
|
||||
if (txtFat.getText().toString().length() == 0) {
|
||||
txtFat.setError(getResources().getString(R.string.error_fat_value_required));
|
||||
validate = false;
|
||||
} else if (!isInRange(txtFat.getText().toString(), 100)) {
|
||||
txtFat.setError(getResources().getString(R.string.error_value_range_0_100));
|
||||
validate = false;
|
||||
}
|
||||
}
|
||||
|
||||
if (prefs.getBoolean("waterEnable", true)) {
|
||||
if (txtWater.getText().toString().length() == 0) {
|
||||
txtWater.setError(getResources().getString(R.string.error_water_value_required));
|
||||
validate = false;
|
||||
} else if (!isInRange(txtWater.getText().toString(), 100)) {
|
||||
txtWater.setError(getResources().getString(R.string.error_value_range_0_100));
|
||||
validate = false;
|
||||
}
|
||||
}
|
||||
|
||||
if (prefs.getBoolean("muscleEnable", true)) {
|
||||
if (txtMuscle.getText().toString().length() == 0) {
|
||||
txtMuscle.setError(getResources().getString(R.string.error_muscle_value_required));
|
||||
validate = false;
|
||||
} else if (!isInRange(txtMuscle.getText().toString(), 100)) {
|
||||
txtMuscle.setError(getResources().getString(R.string.error_value_range_0_100));
|
||||
validate = false;
|
||||
}
|
||||
}
|
||||
|
||||
if (prefs.getBoolean("waistEnable", false)) {
|
||||
if (txtWaist.getText().toString().length() == 0) {
|
||||
txtWaist.setError(getResources().getString(R.string.error_waist_value_required));
|
||||
validate = false;
|
||||
} else if (!isInRange(txtWaist.getText().toString(), 300)) {
|
||||
txtWaist.setError(getResources().getString(R.string.error_value_range_0_300));
|
||||
validate = false;
|
||||
}
|
||||
}
|
||||
|
||||
if (prefs.getBoolean("hipEnable", false)) {
|
||||
if (txtHip.getText().toString().length() == 0) {
|
||||
txtHip.setError(getResources().getString(R.string.error_hip_value_required));
|
||||
validate = false;
|
||||
} else if (!isInRange(txtHip.getText().toString(), 300)) {
|
||||
txtHip.setError(getResources().getString(R.string.error_value_range_0_300));
|
||||
validate = false;
|
||||
}
|
||||
}
|
||||
|
||||
return validate;
|
||||
}
|
||||
|
||||
private boolean isInRange(String value, int maxValue)
|
||||
{
|
||||
if (value.length() == 0)
|
||||
return false;
|
||||
|
||||
float val = Float.valueOf(value);
|
||||
|
||||
if (val >= 0 && val <= maxValue)
|
||||
return true;
|
||||
|
||||
return false;
|
||||
return isValidate;
|
||||
}
|
||||
|
||||
private void saveScaleData() {
|
||||
if (validateInput()) {
|
||||
float weight = Float.valueOf(txtWeight.getText().toString());
|
||||
float fat = Float.valueOf(txtFat.getText().toString());
|
||||
float water = Float.valueOf(txtWater.getText().toString());
|
||||
float muscle = Float.valueOf(txtMuscle.getText().toString());
|
||||
float waist = Float.valueOf(txtWaist.getText().toString());
|
||||
float hip = Float.valueOf(txtHip.getText().toString());
|
||||
|
||||
if (validateAllInput()) {
|
||||
String comment = txtComment.getText().toString();
|
||||
|
||||
String date = txtDate.getText().toString();
|
||||
@@ -311,7 +231,15 @@ public class DataEntryActivity extends Activity {
|
||||
|
||||
OpenScale openScale = OpenScale.getInstance(context);
|
||||
|
||||
openScale.updateScaleData(id, date + " " + time, weight, fat, water, muscle, waist, hip, comment);
|
||||
openScale.updateScaleData(id,
|
||||
date + " " + time,
|
||||
weightMeasurement.getValue(),
|
||||
fatMeasurement.getValue(),
|
||||
waterMeasurement.getValue(),
|
||||
muscleMeasurement.getValue(),
|
||||
waistMeasurement.getValue(),
|
||||
hipMeasurement.getValue(),
|
||||
comment);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -370,14 +298,14 @@ public class DataEntryActivity extends Activity {
|
||||
private DatePickerDialog.OnDateSetListener datePickerListener = new DatePickerDialog.OnDateSetListener() {
|
||||
@Override
|
||||
public void onDateSet(DatePicker view, int selectedYear, int selectedMonth, int selectedDay) {
|
||||
txtDate.setText(String.format("%02d.%02d.%04d", selectedDay, selectedMonth+1, selectedYear));
|
||||
// txtDate.setText(String.format("%02d.%02d.%04d", selectedDay, selectedMonth+1, selectedYear));
|
||||
}
|
||||
};
|
||||
|
||||
private TimePickerDialog.OnTimeSetListener timePickerListener = new TimePickerDialog.OnTimeSetListener() {
|
||||
@Override
|
||||
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
|
||||
txtTime.setText(String.format("%02d:%02d", hourOfDay, minute));
|
||||
// txtTime.setText(String.format("%02d:%02d", hourOfDay, minute));
|
||||
}
|
||||
};
|
||||
|
||||
@@ -385,7 +313,7 @@ public class DataEntryActivity extends Activity {
|
||||
private class onClickListenerAdd implements View.OnClickListener {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
if (validateInput())
|
||||
if (validateAllInput())
|
||||
{
|
||||
OpenScale openScale = OpenScale.getInstance(context);
|
||||
|
||||
@@ -401,18 +329,20 @@ public class DataEntryActivity extends Activity {
|
||||
|
||||
infoDialog.show();
|
||||
} else {
|
||||
float weight = Float.valueOf(txtWeight.getText().toString());
|
||||
float fat = Float.valueOf(txtFat.getText().toString());
|
||||
float water = Float.valueOf(txtWater.getText().toString());
|
||||
float muscle = Float.valueOf(txtMuscle.getText().toString());
|
||||
float waist = Float.valueOf(txtWaist.getText().toString());
|
||||
float hip = Float.valueOf(txtHip.getText().toString());
|
||||
String comment = txtComment.getText().toString();
|
||||
|
||||
String date = txtDate.getText().toString();
|
||||
String time = txtTime.getText().toString();
|
||||
|
||||
openScale.addScaleData(selectedUserId, date + " " + time, weight, fat, water, muscle, waist, hip, comment);
|
||||
openScale.addScaleData(selectedUserId,
|
||||
date + " " + time,
|
||||
weightMeasurement.getValue(),
|
||||
fatMeasurement.getValue(),
|
||||
waterMeasurement.getValue(),
|
||||
muscleMeasurement.getValue(),
|
||||
waistMeasurement.getValue(),
|
||||
hipMeasurement.getValue(),
|
||||
comment);
|
||||
|
||||
finish();
|
||||
}
|
||||
@@ -423,7 +353,7 @@ public class DataEntryActivity extends Activity {
|
||||
private class onClickListenerOk implements View.OnClickListener {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
if (validateInput()) {
|
||||
if (validateAllInput()) {
|
||||
saveScaleData();
|
||||
finish();
|
||||
}
|
||||
|
@@ -6,7 +6,10 @@ import android.graphics.Color;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.support.v4.content.ContextCompat;
|
||||
import android.text.Html;
|
||||
import android.text.InputType;
|
||||
import android.util.TypedValue;
|
||||
import android.view.View;
|
||||
import android.widget.EditText;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.Space;
|
||||
import android.widget.TableLayout;
|
||||
@@ -16,6 +19,7 @@ import android.widget.TextView;
|
||||
import com.health.openscale.R;
|
||||
import com.health.openscale.core.EvaluationResult;
|
||||
import com.health.openscale.core.EvaluationSheet;
|
||||
import com.health.openscale.core.OpenScale;
|
||||
import com.health.openscale.core.ScaleCalculator;
|
||||
import com.health.openscale.core.ScaleData;
|
||||
import com.health.openscale.core.ScaleUser;
|
||||
@@ -37,12 +41,13 @@ abstract class MeasurementView extends TableLayout {
|
||||
|
||||
private String nameText;
|
||||
|
||||
protected ScaleUser scaleUser;
|
||||
private boolean editMode;
|
||||
|
||||
public MeasurementView(Context context, String text, Drawable icon) {
|
||||
super(context);
|
||||
initView(context);
|
||||
|
||||
editMode = false;
|
||||
nameText = text;
|
||||
nameView.setText(text);
|
||||
iconView.setImageDrawable(icon);
|
||||
@@ -69,17 +74,17 @@ abstract class MeasurementView extends TableLayout {
|
||||
addView(measurementRow);
|
||||
addView(evaluatorRow);
|
||||
|
||||
iconView.getLayoutParams().height = 80;
|
||||
iconView.getLayoutParams().height = pxImageDp(30);
|
||||
iconView.setScaleType(ImageView.ScaleType.CENTER_INSIDE);
|
||||
|
||||
nameView.setTextSize(20);
|
||||
nameView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 15);
|
||||
nameView.setTextColor(Color.BLACK);
|
||||
nameView.setLines(2);
|
||||
nameView.setLayoutParams(new TableRow.LayoutParams(0, LayoutParams.WRAP_CONTENT, 0.92f));
|
||||
nameView.setLayoutParams(new TableRow.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, 0.90f));
|
||||
|
||||
valueView.setTextSize(20);
|
||||
valueView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 15);
|
||||
valueView.setTextColor(Color.BLACK);
|
||||
valueView.setLayoutParams(new TableRow.LayoutParams(0, LayoutParams.MATCH_PARENT, 0.07f));
|
||||
valueView.setLayoutParams(new TableRow.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.MATCH_PARENT, 0.01f));
|
||||
|
||||
indicatorView.setLayoutParams(new TableRow.LayoutParams(0, LayoutParams.MATCH_PARENT, 0.01f));
|
||||
indicatorView.setBackgroundColor(Color.GRAY);
|
||||
@@ -100,14 +105,44 @@ abstract class MeasurementView extends TableLayout {
|
||||
abstract void updateValue(ScaleData updateData);
|
||||
abstract void updateDiff(ScaleData updateData, ScaleData lastData);
|
||||
abstract void updatePreferences(SharedPreferences preferences);
|
||||
abstract String getFormat();
|
||||
abstract String getUnit();
|
||||
abstract EvaluationResult evaluateSheet(EvaluationSheet evalSheet, float value);
|
||||
abstract float getMinValue();
|
||||
abstract float getMaxValue();
|
||||
|
||||
abstract int getInputType();
|
||||
|
||||
public float getValue() {
|
||||
if (valueView.getText().length() == 0) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
return Float.valueOf(valueView.getText().toString());
|
||||
}
|
||||
|
||||
public void setEditMode(boolean mode) {
|
||||
editMode = mode;
|
||||
|
||||
if (editMode) {
|
||||
valueView = new EditText(getContext());
|
||||
valueView.setInputType(getInputType());
|
||||
valueView.setHint(getContext().getResources().getString(R.string.info_enter_value_unit) + " " + getUnit());
|
||||
measurementRow.addView(valueView);
|
||||
indicatorView.setVisibility(View.GONE);
|
||||
}
|
||||
}
|
||||
|
||||
protected boolean isEditModeOn() {
|
||||
return editMode;
|
||||
}
|
||||
|
||||
protected void setValueOnView(float value) {
|
||||
valueView.setText(String.format(getFormat(), value));
|
||||
evaluate(value);
|
||||
if (isEditModeOn()) {
|
||||
valueView.setText(String.valueOf(value));
|
||||
} else {
|
||||
valueView.setText(String.format("%.2f ", value) + getUnit());
|
||||
evaluate(value);
|
||||
}
|
||||
}
|
||||
|
||||
protected void setDiffOnView(float value, float lastValue) {
|
||||
@@ -127,7 +162,7 @@ abstract class MeasurementView extends TableLayout {
|
||||
" <br> <font color='grey'>" +
|
||||
symbol +
|
||||
"<small> " +
|
||||
String.format(getFormat(), diffValue) +
|
||||
String.format("%.2f ", diffValue) + getUnit() +
|
||||
"</small></font>"
|
||||
)
|
||||
);
|
||||
@@ -141,8 +176,30 @@ abstract class MeasurementView extends TableLayout {
|
||||
}
|
||||
}
|
||||
|
||||
private int pxImageDp(float dp) {
|
||||
return (int)(dp * getResources().getDisplayMetrics().density + 0.5f);
|
||||
}
|
||||
|
||||
public boolean validateInput() {
|
||||
if (measurementRow.getVisibility() == View.VISIBLE) {
|
||||
if (valueView.getText().toString().length() == 0) {
|
||||
valueView.setError(getResources().getString(R.string.error_value_required));
|
||||
return false;
|
||||
}
|
||||
|
||||
float value = Float.valueOf(valueView.getText().toString());
|
||||
|
||||
if (!(value >= 0 && value <= getMaxValue())) {
|
||||
valueView.setError(getResources().getString(R.string.error_value_range));
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
private void evaluate(float value) {
|
||||
EvaluationSheet evalSheet = new EvaluationSheet(scaleUser);
|
||||
EvaluationSheet evalSheet = new EvaluationSheet(getScaleUser());
|
||||
EvaluationResult evalResult = evaluateSheet(evalSheet, value);
|
||||
|
||||
evaluatorView.setMinMaxValue(getMinValue(), getMaxValue());
|
||||
@@ -166,13 +223,19 @@ abstract class MeasurementView extends TableLayout {
|
||||
}
|
||||
}
|
||||
|
||||
public void updateScaleUser(ScaleUser user) {
|
||||
scaleUser = user;
|
||||
protected ScaleUser getScaleUser() {
|
||||
OpenScale openScale = OpenScale.getInstance(getContext());
|
||||
|
||||
return openScale.getSelectedScaleUser();
|
||||
}
|
||||
|
||||
private class onClickListenerEvaluation implements View.OnClickListener {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
if (isEditModeOn()) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (evaluatorRow.getVisibility() == View.VISIBLE) {
|
||||
evaluatorRow.setVisibility(View.GONE);
|
||||
} else {
|
||||
@@ -199,8 +262,8 @@ class WeightMeasurementView extends MeasurementView {
|
||||
}
|
||||
|
||||
@Override
|
||||
String getFormat() {
|
||||
return "%.1f " + ScaleUser.UNIT_STRING[scaleUser.scale_unit];
|
||||
String getUnit() {
|
||||
return ScaleUser.UNIT_STRING[getScaleUser().scale_unit];
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -222,6 +285,11 @@ class WeightMeasurementView extends MeasurementView {
|
||||
float getMaxValue() {
|
||||
return 300;
|
||||
}
|
||||
|
||||
@Override
|
||||
int getInputType() {
|
||||
return InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_SIGNED;
|
||||
}
|
||||
}
|
||||
|
||||
class BMIMeasurementView extends MeasurementView {
|
||||
@@ -233,19 +301,19 @@ class BMIMeasurementView extends MeasurementView {
|
||||
@Override
|
||||
void updateValue(ScaleData updateData) {
|
||||
ScaleCalculator updateCalculator = new ScaleCalculator(updateData);
|
||||
setValueOnView(updateCalculator.getBMI(scaleUser.body_height));
|
||||
setValueOnView(updateCalculator.getBMI(getScaleUser().body_height));
|
||||
}
|
||||
|
||||
@Override
|
||||
void updateDiff(ScaleData updateData, ScaleData lastData) {
|
||||
ScaleCalculator updateCalculator = new ScaleCalculator(updateData);
|
||||
ScaleCalculator lastCalculator = new ScaleCalculator(lastData);
|
||||
setDiffOnView(updateCalculator.getBMI(scaleUser.body_height), lastCalculator.getBMI(scaleUser.body_height));
|
||||
setDiffOnView(updateCalculator.getBMI(getScaleUser().body_height), lastCalculator.getBMI(getScaleUser().body_height));
|
||||
}
|
||||
|
||||
@Override
|
||||
String getFormat() {
|
||||
return "%.1f";
|
||||
String getUnit() {
|
||||
return "";
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -263,6 +331,11 @@ class BMIMeasurementView extends MeasurementView {
|
||||
return 50;
|
||||
}
|
||||
|
||||
@Override
|
||||
int getInputType() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
void updatePreferences(SharedPreferences preferences) {
|
||||
setVisible(preferences.getBoolean("weightEnable", true));
|
||||
@@ -286,8 +359,8 @@ class WaterMeasurementView extends MeasurementView {
|
||||
}
|
||||
|
||||
@Override
|
||||
String getFormat() {
|
||||
return "%.1f %%";
|
||||
String getUnit() {
|
||||
return "%";
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -309,6 +382,11 @@ class WaterMeasurementView extends MeasurementView {
|
||||
float getMaxValue() {
|
||||
return 80;
|
||||
}
|
||||
|
||||
@Override
|
||||
int getInputType() {
|
||||
return InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_SIGNED;
|
||||
}
|
||||
}
|
||||
|
||||
class MuscleMeasurementView extends MeasurementView {
|
||||
@@ -328,8 +406,8 @@ class MuscleMeasurementView extends MeasurementView {
|
||||
}
|
||||
|
||||
@Override
|
||||
String getFormat() {
|
||||
return "%.1f %%";
|
||||
String getUnit() {
|
||||
return "%";
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -351,6 +429,11 @@ class MuscleMeasurementView extends MeasurementView {
|
||||
float getMaxValue() {
|
||||
return 80;
|
||||
}
|
||||
|
||||
@Override
|
||||
int getInputType() {
|
||||
return InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_SIGNED;
|
||||
}
|
||||
}
|
||||
|
||||
class FatMeasurementView extends MeasurementView {
|
||||
@@ -370,8 +453,8 @@ class FatMeasurementView extends MeasurementView {
|
||||
}
|
||||
|
||||
@Override
|
||||
String getFormat() {
|
||||
return "%.1f %%";
|
||||
String getUnit() {
|
||||
return "%";
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -393,6 +476,11 @@ class FatMeasurementView extends MeasurementView {
|
||||
float getMaxValue() {
|
||||
return 40;
|
||||
}
|
||||
|
||||
@Override
|
||||
int getInputType() {
|
||||
return InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_SIGNED;
|
||||
}
|
||||
}
|
||||
|
||||
class WaistMeasurementView extends MeasurementView {
|
||||
@@ -412,8 +500,8 @@ class WaistMeasurementView extends MeasurementView {
|
||||
}
|
||||
|
||||
@Override
|
||||
String getFormat() {
|
||||
return "%.1f cm";
|
||||
String getUnit() {
|
||||
return "cm";
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -435,6 +523,11 @@ class WaistMeasurementView extends MeasurementView {
|
||||
float getMaxValue() {
|
||||
return 200;
|
||||
}
|
||||
|
||||
@Override
|
||||
int getInputType() {
|
||||
return InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_SIGNED;
|
||||
}
|
||||
}
|
||||
|
||||
class WHtRMeasurementView extends MeasurementView {
|
||||
@@ -446,19 +539,19 @@ class WHtRMeasurementView extends MeasurementView {
|
||||
@Override
|
||||
void updateValue(ScaleData updateData) {
|
||||
ScaleCalculator updateCalculator = new ScaleCalculator(updateData);
|
||||
setValueOnView(updateCalculator.getWHtR(scaleUser.body_height));
|
||||
setValueOnView(updateCalculator.getWHtR(getScaleUser().body_height));
|
||||
}
|
||||
|
||||
@Override
|
||||
void updateDiff(ScaleData updateData, ScaleData lastData) {
|
||||
ScaleCalculator updateCalculator = new ScaleCalculator(updateData);
|
||||
ScaleCalculator lastCalculator = new ScaleCalculator(lastData);
|
||||
setDiffOnView(updateCalculator.getWHtR(scaleUser.body_height), lastCalculator.getWHtR(scaleUser.body_height));
|
||||
setDiffOnView(updateCalculator.getWHtR(getScaleUser().body_height), lastCalculator.getWHtR(getScaleUser().body_height));
|
||||
}
|
||||
|
||||
@Override
|
||||
String getFormat() {
|
||||
return "%.2f";
|
||||
String getUnit() {
|
||||
return "";
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -480,6 +573,11 @@ class WHtRMeasurementView extends MeasurementView {
|
||||
float getMaxValue() {
|
||||
return 1;
|
||||
}
|
||||
|
||||
@Override
|
||||
int getInputType() {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
class HipMeasurementView extends MeasurementView {
|
||||
@@ -499,8 +597,8 @@ class HipMeasurementView extends MeasurementView {
|
||||
}
|
||||
|
||||
@Override
|
||||
String getFormat() {
|
||||
return "%.1f cm";
|
||||
String getUnit() {
|
||||
return "cm";
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -522,6 +620,11 @@ class HipMeasurementView extends MeasurementView {
|
||||
float getMaxValue() {
|
||||
return 200;
|
||||
}
|
||||
|
||||
@Override
|
||||
int getInputType() {
|
||||
return InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_SIGNED;
|
||||
}
|
||||
}
|
||||
|
||||
class WHRMeasurementView extends MeasurementView {
|
||||
@@ -544,8 +647,8 @@ class WHRMeasurementView extends MeasurementView {
|
||||
}
|
||||
|
||||
@Override
|
||||
String getFormat() {
|
||||
return "%.2f";
|
||||
String getUnit() {
|
||||
return "";
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -568,4 +671,9 @@ class WHRMeasurementView extends MeasurementView {
|
||||
return 1.5f;
|
||||
}
|
||||
|
||||
@Override
|
||||
int getInputType() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -226,10 +226,6 @@ public class OverviewFragment extends Fragment implements FragmentUpdateListener
|
||||
|
||||
userSelectedData = null;
|
||||
|
||||
for (MeasurementView measuremt : overviewMeasurements) {
|
||||
measuremt.updateScaleUser(currentScaleUser);
|
||||
}
|
||||
|
||||
spinUserAdapter.clear();
|
||||
ArrayList<ScaleUser> scaleUserList = OpenScale.getInstance(overviewView.getContext()).getScaleUserList();
|
||||
|
||||
|
@@ -87,8 +87,6 @@
|
||||
<TableLayout
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="fill_parent"
|
||||
android:layout_weight="90"
|
||||
android:stretchColumns="1"
|
||||
android:id="@+id/tableLayoutMeasurements">
|
||||
</TableLayout>
|
||||
|
||||
|
@@ -1,13 +1,13 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="fill_parent"
|
||||
android:orientation="vertical"
|
||||
android:padding="5dp" >
|
||||
|
||||
<LinearLayout
|
||||
android:orientation="horizontal"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginBottom="5dp"
|
||||
android:gravity="center">
|
||||
@@ -46,13 +46,12 @@
|
||||
</LinearLayout>
|
||||
|
||||
<ScrollView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:id="@+id/scrollView3" >
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content" >
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
android:padding="5dp" >
|
||||
|
||||
@@ -60,301 +59,99 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:padding="5dp"
|
||||
android:stretchColumns="2" >
|
||||
android:id="@+id/tableLayoutDataEntry">
|
||||
|
||||
<TableRow
|
||||
android:id="@+id/tableRowWeight"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content" >
|
||||
|
||||
<ImageView
|
||||
android:layout_width="30dp"
|
||||
android:layout_height="30dp"
|
||||
android:id="@+id/imageView16"
|
||||
android:layout_column="0"
|
||||
android:src="@drawable/weight"
|
||||
android:layout_gravity="center"
|
||||
android:layout_marginRight="2dp" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/textView1"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/label_weight"
|
||||
android:layout_column="1" />
|
||||
|
||||
<EditText
|
||||
android:id="@+id/txtWeight"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:ems="10"
|
||||
android:hint="@string/info_enter_value_unit"
|
||||
android:inputType="numberDecimal|numberSigned"
|
||||
android:layout_column="2">
|
||||
|
||||
<requestFocus />
|
||||
</EditText>
|
||||
|
||||
</TableRow>
|
||||
|
||||
<TableRow
|
||||
android:id="@+id/tableRowFat"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content" >
|
||||
|
||||
<ImageView
|
||||
android:layout_width="30dp"
|
||||
android:layout_height="30dp"
|
||||
android:id="@+id/imageView17"
|
||||
android:layout_column="0"
|
||||
android:src="@drawable/fat"
|
||||
android:layout_gravity="center"
|
||||
android:layout_marginRight="2dp" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/txtAvgWeight"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/label_fat"
|
||||
android:layout_column="1" />
|
||||
|
||||
<EditText
|
||||
android:id="@+id/txtFat"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:ems="10"
|
||||
android:hint="@string/info_enter_value_percent"
|
||||
android:inputType="numberDecimal|numberSigned"
|
||||
android:layout_column="2" />
|
||||
|
||||
</TableRow>
|
||||
|
||||
<TableRow
|
||||
android:id="@+id/tableRowWater"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content" >
|
||||
|
||||
<ImageView
|
||||
android:layout_width="30dp"
|
||||
android:layout_height="30dp"
|
||||
android:id="@+id/imageView18"
|
||||
android:layout_column="0"
|
||||
android:src="@drawable/water"
|
||||
android:layout_gravity="center"
|
||||
android:layout_marginRight="2dp" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/textView3"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/label_water"
|
||||
android:layout_column="1" />
|
||||
|
||||
<EditText
|
||||
android:id="@+id/txtWater"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:ems="10"
|
||||
android:hint="@string/info_enter_value_percent"
|
||||
android:inputType="numberDecimal|numberSigned"
|
||||
android:layout_column="2" />
|
||||
|
||||
</TableRow>
|
||||
|
||||
<TableRow
|
||||
android:id="@+id/tableRowMuscle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content" >
|
||||
|
||||
<ImageView
|
||||
android:layout_width="30dp"
|
||||
android:layout_height="30dp"
|
||||
android:id="@+id/imageView21"
|
||||
android:layout_column="0"
|
||||
android:src="@drawable/muscle"
|
||||
android:layout_gravity="center"
|
||||
android:layout_marginRight="2dp" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/txtAvgFat"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/label_muscle"
|
||||
android:layout_column="1" />
|
||||
|
||||
<EditText
|
||||
android:id="@+id/txtMuscle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:ems="10"
|
||||
android:hint="@string/info_enter_value_percent"
|
||||
android:inputType="numberDecimal|numberSigned"
|
||||
android:layout_column="2" />
|
||||
|
||||
</TableRow>
|
||||
|
||||
<TableRow
|
||||
android:id="@+id/tableRowWaist"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content" >
|
||||
android:id="@+id/tableRowComment"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:weightSum="1.0">
|
||||
|
||||
<ImageView
|
||||
android:layout_width="30dp"
|
||||
android:layout_height="30dp"
|
||||
android:id="@+id/imageView10"
|
||||
android:layout_column="0"
|
||||
android:src="@drawable/waist"
|
||||
android:layout_gravity="center"
|
||||
android:layout_marginRight="2dp" />
|
||||
android:src="@drawable/comment"
|
||||
android:layout_gravity="center" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/textView"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/label_waist"
|
||||
android:layout_column="1" />
|
||||
android:text="@string/label_comment"
|
||||
android:textSize="15sp"
|
||||
android:layout_weight="0.9"/>
|
||||
|
||||
<EditText
|
||||
android:id="@+id/txtWaist"
|
||||
android:id="@+id/txtComment"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:ems="10"
|
||||
android:hint="@string/info_enter_value_cm"
|
||||
android:inputType="numberDecimal|numberSigned"
|
||||
android:layout_column="2" />
|
||||
android:textSize="15sp"
|
||||
android:layout_weight="0.01"
|
||||
android:inputType="text|textImeMultiLine|textMultiLine|textAutoComplete|textAutoCorrect"
|
||||
android:hint="@string/info_enter_comment" />
|
||||
</TableRow>
|
||||
|
||||
<TableRow
|
||||
android:id="@+id/tableRowHip"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content" >
|
||||
android:id="@+id/tableRowDate"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:weightSum="1.0">
|
||||
|
||||
<ImageView
|
||||
android:layout_width="30dp"
|
||||
android:layout_height="30dp"
|
||||
android:id="@+id/imageView12"
|
||||
android:layout_column="0"
|
||||
android:src="@drawable/hip"
|
||||
android:layout_gravity="center"
|
||||
android:layout_marginRight="2dp" />
|
||||
android:src="@drawable/lastmonth"
|
||||
android:layout_gravity="center" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/textView2"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/label_hip"
|
||||
android:layout_column="1" />
|
||||
android:text="@string/label_date"
|
||||
android:textSize="15sp"
|
||||
android:layout_weight="0.9"/>
|
||||
|
||||
<EditText
|
||||
android:id="@+id/txtHip"
|
||||
android:id="@+id/txtDate"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:ems="10"
|
||||
android:hint="@string/info_enter_value_cm"
|
||||
android:inputType="numberDecimal|numberSigned"
|
||||
android:layout_column="2" />
|
||||
android:layout_weight="0.01"
|
||||
android:textSize="15sp"
|
||||
android:inputType="none"/>
|
||||
|
||||
</TableRow>
|
||||
|
||||
<TableRow
|
||||
android:id="@+id/tableRowComment"
|
||||
android:id="@+id/tableRowTime"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content" >
|
||||
|
||||
<ImageView
|
||||
android:layout_height="30dp"
|
||||
android:src="@drawable/daysleft"
|
||||
android:layout_gravity="center" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/txtAvgWater"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content" >
|
||||
android:layout_height="wrap_content"
|
||||
android:textSize="15sp"
|
||||
android:layout_weight="0.9"
|
||||
android:text="@string/label_time" />
|
||||
|
||||
<ImageView
|
||||
android:layout_width="30dp"
|
||||
android:layout_height="30dp"
|
||||
android:id="@+id/imageView22"
|
||||
android:layout_column="0"
|
||||
android:src="@drawable/comment"
|
||||
android:layout_gravity="center"
|
||||
android:layout_marginRight="2dp" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/txtView22"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/label_comment"
|
||||
android:layout_column="1" />
|
||||
|
||||
<EditText
|
||||
android:id="@+id/txtComment"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:ems="10"
|
||||
android:layout_column="2"
|
||||
android:inputType="text|textImeMultiLine|textMultiLine|textAutoComplete|textAutoCorrect"
|
||||
android:hint="@string/info_enter_comment" />
|
||||
</TableRow>
|
||||
|
||||
<TableRow
|
||||
android:id="@+id/tableRowDate"
|
||||
<EditText
|
||||
android:id="@+id/txtTime"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content" >
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="0.01"
|
||||
android:textSize="15sp"
|
||||
android:inputType="none" />
|
||||
|
||||
<ImageView
|
||||
android:layout_width="30dp"
|
||||
android:layout_height="30dp"
|
||||
android:id="@+id/imageView19"
|
||||
android:layout_column="0"
|
||||
android:src="@drawable/lastmonth"
|
||||
android:layout_gravity="center"
|
||||
android:layout_marginRight="2dp" />
|
||||
</TableRow>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/textView5"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/label_date"
|
||||
android:layout_column="1" />
|
||||
|
||||
<EditText
|
||||
android:id="@+id/txtDate"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="5"
|
||||
android:ems="10"
|
||||
android:inputType="none"
|
||||
android:layout_column="2" />
|
||||
|
||||
</TableRow>
|
||||
|
||||
<TableRow
|
||||
android:id="@+id/tableRowTime"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content" >
|
||||
|
||||
<ImageView
|
||||
android:layout_width="30dp"
|
||||
android:layout_height="30dp"
|
||||
android:id="@+id/imageView20"
|
||||
android:layout_column="0"
|
||||
android:src="@drawable/daysleft"
|
||||
android:layout_gravity="center"
|
||||
android:layout_marginRight="2dp" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/txtAvgWater"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/label_time"
|
||||
android:layout_column="1" />
|
||||
|
||||
<EditText
|
||||
android:id="@+id/txtTime"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="5"
|
||||
android:ems="10"
|
||||
android:layout_column="2"
|
||||
android:inputType="none" />
|
||||
|
||||
</TableRow>
|
||||
|
||||
</TableLayout>
|
||||
</TableLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content" >
|
||||
|
||||
<Button
|
||||
android:id="@+id/btnCancel"
|
||||
android:layout_width="wrap_content"
|
||||
@@ -397,7 +194,7 @@
|
||||
android:background="@drawable/flat_selector"
|
||||
android:text="@string/label_ok" />
|
||||
</LinearLayout>
|
||||
</LinearLayout>
|
||||
</LinearLayout>
|
||||
</ScrollView>
|
||||
</LinearLayout>
|
||||
</LinearLayout>
|
||||
|
||||
|
@@ -79,7 +79,6 @@
|
||||
<TableLayout
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="fill_parent"
|
||||
android:stretchColumns="1"
|
||||
android:id="@+id/tableLayoutMeasurements">
|
||||
</TableLayout>
|
||||
|
||||
|
@@ -4,15 +4,8 @@
|
||||
<string name="action_settings">Einstellungen</string>
|
||||
<string name="error_body_height_required">Fehler Körpergröße ist erforderlich</string>
|
||||
<string name="error_exporting">Fehler beim Exportieren</string>
|
||||
<string name="error_fat_value_required">Fettanteil ist erforderlich</string>
|
||||
<string name="error_importing">Fehler beim Importieren</string>
|
||||
<string name="error_muscle_value_required">Muskelanteil ist erforderlich</string>
|
||||
<string name="error_user_name_required">Fehler Benutzername ist erfoderlich</string>
|
||||
<string name="error_value_range_0_100">Der Wert muss zwischen 0 und 100 liegen</string>
|
||||
<string name="error_value_range_0_300">Der Wert muss zwischen 0 und 300 liegen</string>
|
||||
<string name="error_water_value_required">Wassergehalt ist erforderlich</string>
|
||||
<string name="error_weight_value_required">Gewicht ist erforderlich</string>
|
||||
<string name="error_waist_value_required">Bauchumfang ist erforderlich</string>
|
||||
<string name="error_hip_value_required">Hüftumfang ist erforderlich</string>
|
||||
<string name="info_data_all_deleted">Alle Datenbank Einträge wurden gelöscht</string>
|
||||
<string name="info_data_deleted">Datenbank Eintrag wurde gelöscht</string>
|
||||
@@ -121,4 +114,6 @@
|
||||
<string name="Friday">Freitag</string>
|
||||
<string name="Saturday">Samstag</string>
|
||||
<string name="Sunday">Sonntag</string>
|
||||
<string name="error_value_range">Fehler beim Wertebereich</string>
|
||||
<string name="error_value_required">Wert ist erforderlich</string>
|
||||
</resources>
|
@@ -49,13 +49,7 @@
|
||||
<string name="error_exporting">エクスポートに失敗しました</string>
|
||||
<string name="error_importing">インポートに失敗しました</string>
|
||||
<string name="error_body_height_required">身長が必要です</string>
|
||||
<string name="error_fat_value_required">体脂肪率が必要です</string>
|
||||
<string name="error_muscle_value_required">筋肉率が必要です</string>
|
||||
<string name="error_user_name_required">ユーザー名が必要です</string>
|
||||
<string name="error_value_range_0_100">値は0から100の間でなければなりません</string>
|
||||
<string name="error_value_range_0_300">値は0から300の間でなければなりません</string>
|
||||
<string name="error_water_value_required">体内の水分が必要です</string>
|
||||
<string name="error_weight_value_required">体重が必要です</string>
|
||||
<string name="info_data_all_deleted">すべてのレコードが削除されます</string>
|
||||
<string name="info_data_deleted">レコードが削除されます</string>
|
||||
<string name="info_data_exported">レコードのエクスポート</string>
|
||||
@@ -88,7 +82,6 @@
|
||||
<string name="info_is_not_enable">無効にします</string>
|
||||
<string name="info_is_enable">有効にします</string>
|
||||
<string name="error_hip_value_required">腰囲が必要です</string>
|
||||
<string name="error_waist_value_required">胴囲が必要です</string>
|
||||
<string name="label_waist">胴囲</string>
|
||||
<string name="label_hip">腰囲</string>
|
||||
<string name="info_your_waist">あなたは胴囲が</string>
|
||||
@@ -121,4 +114,6 @@
|
||||
<string name="Tuesday">火曜日</string>
|
||||
<string name="Monday">月曜日</string>
|
||||
<string name="Sunday">日曜日</string>
|
||||
<string name="error_value_required">値が必要です</string>
|
||||
<string name="error_value_range">エラー値の範囲</string>
|
||||
</resources>
|
@@ -63,18 +63,13 @@
|
||||
<string name="label_export">Export</string>
|
||||
<string name="label_delete_all">Delete all</string>
|
||||
|
||||
<string name="error_weight_value_required">Weight is required</string>
|
||||
<string name="error_fat_value_required">Body fat percentage is required</string>
|
||||
<string name="error_water_value_required">Water percentage is required</string>
|
||||
<string name="error_muscle_value_required">Muscle percentage is required</string>
|
||||
<string name="error_value_range_0_300">The value must be in range from 0 to 300</string>
|
||||
<string name="error_value_range_0_100">The value must be in range from 0 to 100</string>
|
||||
<string name="error_value_required">Value is required</string>
|
||||
<string name="error_value_range">The value is not in range</string>
|
||||
<string name="error_exporting">Error exporting</string>
|
||||
<string name="error_importing">Error importing</string>
|
||||
<string name="error_user_name_required">Error user name is required</string>
|
||||
<string name="error_body_height_required">Error body height is required</string>
|
||||
<string name="error_goal_weight_required">Error goal weight is required</string>
|
||||
<string name="error_waist_value_required">waist circumference is required</string>
|
||||
<string name="error_hip_value_required">hip circumference is required</string>
|
||||
|
||||
<string name="info_data_deleted">Database entry deleted</string>
|
||||
|
Reference in New Issue
Block a user