diff --git a/android_app/app/src/main/java/com/health/openscale/gui/GraphFragment.java b/android_app/app/src/main/java/com/health/openscale/gui/GraphFragment.java
index 81962caa..b760b43c 100644
--- a/android_app/app/src/main/java/com/health/openscale/gui/GraphFragment.java
+++ b/android_app/app/src/main/java/com/health/openscale/gui/GraphFragment.java
@@ -103,8 +103,8 @@ public class GraphFragment extends Fragment implements FragmentUpdateListener {
axisY.setHasLines(true);
- axisX.setName("Zeit");
- axisY.setName("Wert");
+ axisX.setName(getResources().getString(R.string.label_x_axis));
+ axisY.setName(getResources().getString(R.string.label_y_axis));
axisX.setTextColor(Color.BLACK);
axisY.setTextColor(Color.BLACK);
diff --git a/android_app/app/src/main/java/com/health/openscale/gui/MainActivity.java b/android_app/app/src/main/java/com/health/openscale/gui/MainActivity.java
index d76aa4af..035d2aa0 100644
--- a/android_app/app/src/main/java/com/health/openscale/gui/MainActivity.java
+++ b/android_app/app/src/main/java/com/health/openscale/gui/MainActivity.java
@@ -63,7 +63,6 @@ public class MainActivity extends ActionBarActivity implements
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
if(prefs.getBoolean("btEnable", true)) {
- Log.i("ASD", "BT TRZE");
String deviceName = prefs.getString("btDeviceName", "openScale");
OpenScale.getInstance(getApplicationContext()).startBluetoothServer(deviceName);
}
@@ -74,8 +73,7 @@ public class MainActivity extends ActionBarActivity implements
// Create the adapter that will return a fragment for each of the three
// primary sections of the activity.
- mSectionsPagerAdapter = new SectionsPagerAdapter(
- getSupportFragmentManager(), this);
+ mSectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager());
// Set up the ViewPager with the sections adapter.
mViewPager = (ViewPager) findViewById(R.id.pager);
@@ -157,7 +155,7 @@ public class MainActivity extends ActionBarActivity implements
private GraphFragment graphFrag;
private TableFragment tableFrag;
- public SectionsPagerAdapter(FragmentManager fm, Context con) {
+ public SectionsPagerAdapter(FragmentManager fm) {
super(fm);
overviewFrag = new OverviewFragment();
diff --git a/android_app/app/src/main/java/com/health/openscale/gui/NewEntryActivity.java b/android_app/app/src/main/java/com/health/openscale/gui/NewEntryActivity.java
index 1f537282..73b1a49d 100644
--- a/android_app/app/src/main/java/com/health/openscale/gui/NewEntryActivity.java
+++ b/android_app/app/src/main/java/com/health/openscale/gui/NewEntryActivity.java
@@ -101,42 +101,42 @@ public class NewEntryActivity extends Activity {
if( txtWeight.getText().toString().length() == 0 )
{
- txtWeight.setError("Weight value ist required!");
+ txtWeight.setError(getResources().getString(R.string.error_weight_value_required));
validate = false;
} else if( !(Float.valueOf(txtWeight.getText().toString()) >= 0 && Float.valueOf(txtWeight.getText().toString()) <= 300) )
{
- txtWeight.setError("Value must be in range from 0 to 300!");
+ txtWeight.setError(getResources().getString(R.string.error_value_range_0_300));
validate = false;
}
if( txtFat.getText().toString().length() == 0 )
{
- txtFat.setError("Fat value ist required!");
+ txtFat.setError(getResources().getString(R.string.error_fat_value_required));
validate = false;
} else if(!isInRange(txtFat.getText().toString()))
{
- txtFat.setError("Value must be in range from 0 to 100");
+ txtFat.setError(getResources().getString(R.string.error_value_range_0_100));
validate = false;
}
if( txtWater.getText().toString().length() == 0 )
{
- txtWater.setError("Water value ist required!");
+ txtWater.setError(getResources().getString(R.string.error_water_value_required));
validate = false;
} else if(!isInRange(txtWater.getText().toString()))
{
- txtWater.setError("Value must be in range from 0 to 100");
+ txtWater.setError(getResources().getString(R.string.error_value_range_0_100));
validate = false;
}
if( txtMuscle.getText().toString().length() == 0 )
{
- txtMuscle.setError("Muscle value ist required!");
+ txtMuscle.setError(getResources().getString(R.string.error_muscle_value_required));
validate = false;
} else if(!isInRange(txtMuscle.getText().toString()))
{
- txtMuscle.setError("Value must be in range from 0 to 100");
+ txtMuscle.setError(getResources().getString(R.string.error_value_range_0_100));
validate = false;
}
diff --git a/android_app/app/src/main/java/com/health/openscale/gui/OverviewFragment.java b/android_app/app/src/main/java/com/health/openscale/gui/OverviewFragment.java
index 5cb3ac66..b35a8e80 100644
--- a/android_app/app/src/main/java/com/health/openscale/gui/OverviewFragment.java
+++ b/android_app/app/src/main/java/com/health/openscale/gui/OverviewFragment.java
@@ -77,14 +77,14 @@ public class OverviewFragment extends Fragment implements FragmentUpdateListener
ScaleData lastEntry = scaleDBEntries.get(0);
- arcValues.add(new ArcValue((float) lastEntry.fat, Utils.COLOR_ORANGE));
- arcValues.add(new ArcValue((float) lastEntry.water, Utils.COLOR_BLUE));
- arcValues.add(new ArcValue((float) lastEntry.muscle, Utils.COLOR_GREEN));
+ arcValues.add(new ArcValue(lastEntry.fat, Utils.COLOR_ORANGE));
+ arcValues.add(new ArcValue(lastEntry.water, Utils.COLOR_BLUE));
+ arcValues.add(new ArcValue(lastEntry.muscle, Utils.COLOR_GREEN));
PieChartData pieChartData = new PieChartData(arcValues);
pieChartData.setHasLabels(true);
pieChartData.setHasCenterCircle(true);
- pieChartData.setCenterText1(Float.toString(lastEntry.weight) + " kg");
+ pieChartData.setCenterText1(Float.toString(lastEntry.weight) + " " + getResources().getString(R.string.weight_unit));
pieChartData.setCenterText1FontSize(35);
pieChartData.setCenterText2(new SimpleDateFormat("dd. MMM yyyy (EE)").format(lastEntry.date_time));
pieChartData.setCenterText2FontSize(15);
@@ -109,7 +109,7 @@ public class OverviewFragment extends Fragment implements FragmentUpdateListener
avgWater = avgWater / scaleDBEntries.size();
avgMuscle = avgMuscle / scaleDBEntries.size();
- txtAvgWeight.setText(String.format( "%.1f kg", avgWeight));
+ txtAvgWeight.setText(String.format( "%.1f " + getResources().getString(R.string.weight_unit), avgWeight));
txtAvgFat.setText(String.format( "%.1f %%", avgFat));
txtAvgWater.setText(String.format( "%.1f %%", avgWater));
txtAvgMuscle.setText(String.format( "%.1f %%", avgMuscle));
diff --git a/android_app/app/src/main/java/com/health/openscale/gui/TableFragment.java b/android_app/app/src/main/java/com/health/openscale/gui/TableFragment.java
index 72535839..45281fb0 100644
--- a/android_app/app/src/main/java/com/health/openscale/gui/TableFragment.java
+++ b/android_app/app/src/main/java/com/health/openscale/gui/TableFragment.java
@@ -125,32 +125,32 @@ public class TableFragment extends Fragment implements FragmentUpdateListener {
{
AlertDialog.Builder filenameDialog = new AlertDialog.Builder(getActivity());
- filenameDialog.setTitle("Set filename on /sdcard ...");
+ filenameDialog.setTitle(getResources().getString(R.string.info_set_filename) + " /sdcard ...");
final EditText txtFilename = new EditText(tableView.getContext());
txtFilename.setText("/openScale_data.csv");
filenameDialog.setView(txtFilename);
- filenameDialog.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
+ filenameDialog.setPositiveButton(getResources().getString(R.string.label_ok), new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
boolean isError = false;
try {
OpenScale.getInstance(tableView.getContext()).importData(Environment.getExternalStorageDirectory().getPath() + txtFilename.getText().toString());
} catch (IOException e) {
- Toast.makeText(tableView.getContext(), "Error importing " + e.getMessage(), Toast.LENGTH_SHORT).show();
+ Toast.makeText(tableView.getContext(), getResources().getString(R.string.error_importing) + " " + e.getMessage(), Toast.LENGTH_SHORT).show();
isError = true;
}
if (!isError) {
- Toast.makeText(tableView.getContext(), "Data imported from /sdcard" + txtFilename.getText().toString(), Toast.LENGTH_SHORT).show();
+ Toast.makeText(tableView.getContext(), getResources().getString(R.string.info_data_imported) + " /sdcard" + txtFilename.getText().toString(), Toast.LENGTH_SHORT).show();
updateOnView(OpenScale.getInstance(tableView.getContext()).getScaleDBEntries());
}
}
});
- filenameDialog.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
+ filenameDialog.setNegativeButton(getResources().getString(R.string.label_cancel), new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dialog.dismiss();
}
@@ -164,31 +164,31 @@ public class TableFragment extends Fragment implements FragmentUpdateListener {
{
AlertDialog.Builder filenameDialog = new AlertDialog.Builder(getActivity());
- filenameDialog.setTitle("Set filename on /sdcard ...");
+ filenameDialog.setTitle(getResources().getString(R.string.info_set_filename) + " /sdcard ...");
final EditText txtFilename = new EditText(tableView.getContext());
txtFilename.setText("/openScale_data.csv");
filenameDialog.setView(txtFilename);
- filenameDialog.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
+ filenameDialog.setPositiveButton(getResources().getString(R.string.label_ok), new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
boolean isError = false;
try {
OpenScale.getInstance(tableView.getContext()).exportData(Environment.getExternalStorageDirectory().getPath() + txtFilename.getText().toString());
} catch (IOException e) {
- Toast.makeText(tableView.getContext(), "Error exporting " + e.getMessage(), Toast.LENGTH_SHORT).show();
+ Toast.makeText(tableView.getContext(), getResources().getString(R.string.error_exporting) + " " + e.getMessage(), Toast.LENGTH_SHORT).show();
isError = true;
}
if (!isError) {
- Toast.makeText(tableView.getContext(), "Data exported to /sdcard" + txtFilename.getText().toString(), Toast.LENGTH_SHORT).show();
+ Toast.makeText(tableView.getContext(), getResources().getString(R.string.info_data_exported) + " /sdcard" + txtFilename.getText().toString(), Toast.LENGTH_SHORT).show();
}
}
});
- filenameDialog.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
+ filenameDialog.setNegativeButton(getResources().getString(R.string.label_cancel), new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dialog.dismiss();
}
@@ -202,18 +202,18 @@ public class TableFragment extends Fragment implements FragmentUpdateListener {
{
AlertDialog.Builder deleteAllDialog = new AlertDialog.Builder(getActivity());
- deleteAllDialog.setMessage("Do you really want to delete all database entries?");
+ deleteAllDialog.setMessage(getResources().getString(R.string.question_really_delete_all));
- deleteAllDialog.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
+ deleteAllDialog.setPositiveButton(getResources().getString(R.string.label_yes), new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
OpenScale.getInstance(tableView.getContext()).deleteAllDBEntries();
- Toast.makeText(tableView.getContext(), "All database entries deleted!", Toast.LENGTH_SHORT).show();
+ Toast.makeText(tableView.getContext(), getResources().getString(R.string.info_data_deleted), Toast.LENGTH_SHORT).show();
updateOnView(OpenScale.getInstance(tableView.getContext()).getScaleDBEntries());
}
});
- deleteAllDialog.setNegativeButton("No", new DialogInterface.OnClickListener() {
+ deleteAllDialog.setNegativeButton(getResources().getString(R.string.label_no), new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dialog.dismiss();
}
diff --git a/android_app/app/src/main/res/layout/activity_newentry.xml b/android_app/app/src/main/res/layout/activity_newentry.xml
index 63d45582..7f90084c 100644
--- a/android_app/app/src/main/res/layout/activity_newentry.xml
+++ b/android_app/app/src/main/res/layout/activity_newentry.xml
@@ -1,6 +1,5 @@
+ android:text="@string/label_weight" />
@@ -45,14 +44,14 @@
android:id="@+id/txtAvgWeight"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:text="Fat" />
+ android:text="@string/label_fat" />
@@ -66,14 +65,14 @@
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:text="Water" />
+ android:text="@string/label_water" />
@@ -87,14 +86,14 @@
android:id="@+id/txtAvgFat"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:text="Muscle" />
+ android:text="@string/label_muscle" />
@@ -108,7 +107,7 @@
android:id="@+id/textView5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:text="Date" />
+ android:text="@string/label_date" />
@@ -137,7 +136,7 @@
android:id="@+id/txtAvgWater"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:text="Time" />
+ android:text="@string/label_time" />
@@ -169,7 +168,7 @@
android:layout_height="wrap_content"
android:layout_weight="5"
android:background="@drawable/flat_selector"
- android:text="Add" />
+ android:text="@string/label_add" />
+ android:text="@string/label_cancel" />
diff --git a/android_app/app/src/main/res/layout/fragment_overview.xml b/android_app/app/src/main/res/layout/fragment_overview.xml
index 583d5aac..bde56420 100644
--- a/android_app/app/src/main/res/layout/fragment_overview.xml
+++ b/android_app/app/src/main/res/layout/fragment_overview.xml
@@ -37,7 +37,7 @@
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="3"
- android:text="Weight Ø"
+ android:text="@string/label_weight_average"
android:textStyle="bold" />
@@ -89,7 +89,7 @@
android:layout_height="wrap_content"
android:layout_weight="5"
android:background="@drawable/flat_selector"
- android:text="Import"
+ android:text="@string/label_import"
android:textColor="@android:color/white" />
diff --git a/android_app/app/src/main/res/values/strings.xml b/android_app/app/src/main/res/values/strings.xml
index 9fba0dbd..3217caf9 100644
--- a/android_app/app/src/main/res/values/strings.xml
+++ b/android_app/app/src/main/res/values/strings.xml
@@ -6,5 +6,54 @@
graph
table
Settings
+ Add
+ Cancel
+ Ok
+ Yes
+ No
+ Weight
+ Fat
+ Water
+ Muscle
+
+ kg
+
+ Date
+ Time
+ Set
+
+ Weight Ø
+ Fat Ø
+ Water Ø
+ Muscle Ø
+
+ Import
+ Export
+ Delete all
+
+ Date
+ Value
+
+ Weight value is required!
+ Fat value is required!
+ Water value is required!
+ Muscle value is required!
+ Value must be in range from 0 to 300!
+ Value must be in range from 0 to 100!
+ Error exporting
+ Error importing
+
+ All database entries deleted!
+ Data exported to
+ Data imported from
+ Set filename to
+ Enter value in %
+ Enter value in kg
+
+ Do you really want to delete all database entries?
+
+ Bluetooth
+ Enable Bluetooth Server
+ Device Name
diff --git a/android_app/app/src/main/res/xml/preferences.xml b/android_app/app/src/main/res/xml/preferences.xml
index 92449654..792770f8 100644
--- a/android_app/app/src/main/res/xml/preferences.xml
+++ b/android_app/app/src/main/res/xml/preferences.xml
@@ -1,8 +1,9 @@
-
-
+
+
+