Performance increase. (now caching images) Minor bugfixes.

This commit is contained in:
Christopher Beckmann 2017-10-25 16:59:23 +02:00
commit 6e25bf1155
15 changed files with 30 additions and 29 deletions

View file

@ -479,7 +479,7 @@ public class ExerciseActivity extends AppCompatActivity implements android.suppo
private boolean nextExercisePart() {
if(set != null) {
if(set.size() != 0) {
if(set.size() != 0 && currentExercise < set.size()) {
int[] images = set.get(currentExercise).getImageResIds(this);
currentExercisePart = (currentExercisePart + 1);
@ -518,7 +518,7 @@ public class ExerciseActivity extends AppCompatActivity implements android.suppo
executionText.setText(e.getExecution());
descriptionText.setText(e.getDescription());
sectionText.setText(e.getSection());
sectionText.setText(e.getSection(this));
exerciseImage.setImageResource(e.getImageResIds(this)[image]);
exerciseImage.setOnClickListener(infoClickListener);
exerciseInfoButton.setOnClickListener(infoClickListener);

View file

@ -46,7 +46,7 @@ public class ExerciseSetAdapter extends RecyclerView.Adapter<ViewHolder> {
vh.image.setImageResource(exercise.getImageResIds(mContext)[0]);
vh.executionText.setText(exercise.getExecution());
vh.descriptionText.setText(exercise.getDescription());
vh.section.setText(exercise.getSection());
vh.section.setText(exercise.getSection(mContext));
}
@Override

View file

@ -12,6 +12,8 @@ import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.bumptech.glide.Glide;
import org.secuso.privacyfriendlybreakreminder.R;
import org.secuso.privacyfriendlybreakreminder.activities.EditExerciseSetActivity;
import org.secuso.privacyfriendlybreakreminder.activities.ManageExerciseSetsActivity;
@ -123,7 +125,8 @@ public class ExerciseSetListAdapter extends RecyclerView.Adapter<RecyclerView.Vi
View view = LayoutInflater.from(mContext).inflate(R.layout.layout_round_exercise_image, null, false);
ImageView image = (ImageView) view.findViewById(R.id.exercise_image);
image.setImageResource(set.get(i).getImageResIds(mContext)[0]);
Glide.with(mContext).load(set.get(i).getImageResIds(mContext)[0]).into(image);
vh.exerciseList.addView(view);
}

View file

@ -13,6 +13,8 @@ import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.bumptech.glide.Glide;
import org.secuso.privacyfriendlybreakreminder.R;
import org.secuso.privacyfriendlybreakreminder.database.data.ExerciseSet;
@ -73,7 +75,7 @@ public class ExerciseSetSpinnerAdapter extends ArrayAdapter<ExerciseSet> {
View view = LayoutInflater.from(getContext()).inflate(R.layout.layout_round_exercise_image, null, false);
ImageView image = (ImageView) view.findViewById(R.id.exercise_image);
image.setImageResource(set.get(i).getImageResIds(getContext())[0]);
Glide.with(getContext()).load(set.get(i).getImageResIds(getContext())[0]).into(image);
exerciseList.addView(view);
}

View file

@ -287,7 +287,7 @@ public class BreakActivity extends AppCompatActivity implements View.OnClickList
side_repetition.setText(R.string.exercise_break);
break_exercise_type = (TextView) findViewById(R.id.break_exercise_type);
break_exercise_type.setText(exerciseList.get(currentExercise).getSection());
break_exercise_type.setText(exerciseList.get(currentExercise).getSection(this));
setExerciseImage();
}

View file

@ -34,18 +34,5 @@ public final class ExerciseColumns {
return e;
}
public static ContentValues getValues(Exercise record) {
ContentValues values = new ContentValues();
if(record.getId() != -1) {
values.put(ExerciseColumns._ID, record.getId());
}
values.put(ExerciseColumns.SECTION, record.getSection());
values.put(ExerciseColumns.IMAGE_ID, record.getImageID());
values.putAll(ExerciseLocalColumns.getValues(record));
return values;
}
private ExerciseColumns() {}
}

View file

@ -5,6 +5,8 @@ import android.content.Context;
import android.support.annotation.DrawableRes;
import android.support.annotation.IdRes;
import org.secuso.privacyfriendlybreakreminder.exercises.ExerciseSections;
public class Exercise {
private int id;
private int localId;
@ -65,7 +67,13 @@ public class Exercise {
return result;
}
public String getSection() {
public String getSection(Context context) {
String section = this.section;
for(ExerciseSections es : ExerciseSections.getSectionList()) {
section = section.replaceAll(es.name(), es.getLocalName(context));
}
return section;
}
public void setSection(String section) {

View file

@ -41,7 +41,7 @@ public final class ExerciseDialog {
if(descriptionText != null)
descriptionText.setText(e.getDescription());
if(sectionText != null)
sectionText.setText(e.getSection());
sectionText.setText(e.getSection(context));
if(exerciseImage != null) {
exerciseImage.setOnClickListener(new View.OnClickListener() {
int currentlyShownExercise = 0;

View file

@ -94,7 +94,7 @@
android:onClick="onClick"
app:fabSize="normal"
app:layout_anchor="@id/constraintLayout2"
app:layout_anchorGravity="bottom|right|end"
app:layout_anchorGravity="bottom|end"
app:srcCompat="@drawable/ic_edit_white_24dp" />
</android.support.design.widget.CoordinatorLayout>

View file

@ -286,7 +286,7 @@
android:id="@+id/progressBarBig"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="0dp"
android:layout_height="16dp"
android:layout_height="0dp"
android:layout_centerHorizontal="true"
android:max="100"
android:onClick="onClick"

View file

@ -20,7 +20,7 @@
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@+id/execution"
app:srcCompat="@drawable/exercise_0" />
app:srcCompat="@drawable/breakreminder_0" />
<TextView
android:id="@+id/execution_title"

View file

@ -4,7 +4,7 @@
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<android.support.v7.widget.CardView
<!-- <android.support.v7.widget.CardView
android:id="@+id/exercise_image_card"
android:layout_width="48dp"
android:layout_height="48dp"
@ -12,14 +12,14 @@
android:shape="ring"
android:thicknessRatio="1.9"
app:cardCornerRadius="24dp"
app:cardElevation="0dp">
app:cardElevation="0dp"> -->
<ImageView
android:id="@+id/exercise_image"
android:layout_width="48dp"
android:layout_height="48dp"
android:scaleType="fitCenter"
app:srcCompat="@drawable/exercise_0" />
app:srcCompat="@drawable/breakreminder_0" />
</android.support.v7.widget.CardView>
<!-- </android.support.v7.widget.CardView> -->
</LinearLayout>

View file

@ -57,6 +57,7 @@
<string name="save">Speichern</string>
<string name="settings_break_summary">Derzeitiger Wert ist $1</string>
<string name="settings_dialog_message">Wählen Sie ihre Arbeitszeit aus</string>
<string name="dialog_add_exercise_set_title">Neues Übungsset hinzufügen</string>
<string name="settings_break_title">Wählen Sie ihre Pausenzeit aus</string>
<string name="settings_doubleName">Die Änderungen konnten nicht gespeichert werden, da das dieser Profilname bereits existiert!</string>
<string name="settings_emptyName">Die Änderungen konnten nicht gespeichert werden, da das Feld für den Profilnamen leer ist! </string>

View file

@ -232,7 +232,7 @@
<string name="set_contains_no_exercises">This set contains no exercises.</string>
<string name="take_a_break_now">Take a break now! Click here to do your chosen exercises.</string>
<string name="numberpicker_formatter">%02d</string>
<string name="numberpicker_formatter" translatable="false">%02d</string>
<string name="pref_exercise_time">Exercise time (in Seconds)</string>
<string name="pref_keep_screen_on_during_exercise">Keep screen on during exercise</string>