update day labels

This commit is contained in:
tibbi 2016-09-15 20:02:26 +02:00
parent ba0b94b6cb
commit b66debe1e5
2 changed files with 63 additions and 33 deletions

View File

@ -50,7 +50,6 @@ public class MainActivity extends SimpleActivity {
private int mWeakTextColor;
private int mTextColorWithEvent;
private int mWeakTextColorWithEvent;
private boolean mSundayFirst;
@Override
protected void onCreate(Bundle savedInstanceState) {
@ -66,12 +65,10 @@ public class MainActivity extends SimpleActivity {
mWeakTextColorWithEvent = Utils.adjustAlpha(mRes.getColor(R.color.colorPrimary), Constants.LOW_ALPHA);
//mLeftArrow.getDrawable().mutate().setColorFilter(mTextColor, PorterDuff.Mode.SRC_ATOP);
//mRightArrow.getDrawable().mutate().setColorFilter(mTextColor, PorterDuff.Mode.SRC_ATOP);
mSundayFirst = mConfig.getIsSundayFirst();
mPackageName = getPackageName();
mDayTextSize /= mRes.getDisplayMetrics().density;
mTodayTextSize /= mRes.getDisplayMetrics().density;
setupLabels();
final String today = new DateTime().toString(Formatter.DAYCODE_PATTERN);
final List<String> codes = getMonths(today);
@ -80,15 +77,6 @@ public class MainActivity extends SimpleActivity {
mPager.setCurrentItem(codes.size() / 2);
}
@Override
protected void onResume() {
super.onResume();
if (mConfig.getIsSundayFirst() != mSundayFirst) {
mSundayFirst = mConfig.getIsSundayFirst();
setupLabels();
}
}
@Override
protected void onDestroy() {
super.onDestroy();
@ -218,21 +206,4 @@ public class MainActivity extends SimpleActivity {
dayPicker.setVisibility(View.GONE);
}
private void setupLabels() {
int letters[] = Utils.getLetterIDs();
for (int i = 0; i < 7; i++) {
final TextView dayTV = (TextView) findViewById(mRes.getIdentifier("label_" + i, "id", mPackageName));
if (dayTV != null) {
dayTV.setTextSize(mDayTextSize);
dayTV.setTextColor(mWeakTextColor);
int index = i;
if (!mSundayFirst)
index = (index + 1) % letters.length;
dayTV.setText(getString(letters[index]));
}
}
}
}

View File

@ -1,5 +1,7 @@
package com.simplemobiletools.calendar.fragments;
import android.content.res.Resources;
import android.graphics.Color;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
@ -9,34 +11,91 @@ import android.widget.TextView;
import com.simplemobiletools.calendar.Calendar;
import com.simplemobiletools.calendar.CalendarImpl;
import com.simplemobiletools.calendar.Config;
import com.simplemobiletools.calendar.Constants;
import com.simplemobiletools.calendar.Formatter;
import com.simplemobiletools.calendar.R;
import com.simplemobiletools.calendar.Utils;
import com.simplemobiletools.calendar.models.Day;
import java.util.List;
import butterknife.BindDimen;
import butterknife.BindView;
import butterknife.ButterKnife;
public class MonthFragment extends Fragment implements Calendar {
@BindView(R.id.top_text) TextView mMonthTV;
@BindDimen(R.dimen.day_text_size) float mDayTextSize;
@BindDimen(R.dimen.today_text_size) float mTodayTextSize;
private View mView;
private CalendarImpl mCalendar;
private Resources mRes;
private String mPackageName;
private Config mConfig;
private int mTextColor;
private int mWeakTextColor;
private int mTextColorWithEvent;
private int mWeakTextColorWithEvent;
private boolean mSundayFirst;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
final View view = inflater.inflate(R.layout.calendar_layout, container, false);
ButterKnife.bind(this, view);
mView = inflater.inflate(R.layout.calendar_layout, container, false);
ButterKnife.bind(this, mView);
final String code = getArguments().getString(Constants.DAY_CODE);
mCalendar = new CalendarImpl(this, getActivity().getApplicationContext());
mCalendar = new CalendarImpl(this, getContext());
mCalendar.updateCalendar(Formatter.getDateTimeFromCode(code));
mConfig = Config.newInstance(getContext());
mSundayFirst = mConfig.getIsSundayFirst();
return view;
final int baseColor = mConfig.getIsDarkTheme() ? Color.WHITE : Color.BLACK;
mRes = getResources();
mTextColor = Utils.adjustAlpha(baseColor, Constants.HIGH_ALPHA);
mTextColorWithEvent = Utils.adjustAlpha(mRes.getColor(R.color.colorPrimary), Constants.HIGH_ALPHA);
mWeakTextColor = Utils.adjustAlpha(baseColor, Constants.LOW_ALPHA);
mWeakTextColorWithEvent = Utils.adjustAlpha(mRes.getColor(R.color.colorPrimary), Constants.LOW_ALPHA);
mPackageName = getActivity().getPackageName();
mDayTextSize /= mRes.getDisplayMetrics().density;
setupLabels();
return mView;
}
@Override
public void onResume() {
super.onResume();
if (mConfig.getIsSundayFirst() != mSundayFirst) {
mSundayFirst = mConfig.getIsSundayFirst();
setupLabels();
}
}
@Override
public void updateCalendar(String month, List<Day> days) {
mMonthTV.setText(month);
}
private void setupLabels() {
int letters[] = Utils.getLetterIDs();
for (int i = 0; i < 7; i++) {
final TextView dayTV = (TextView) mView.findViewById(mRes.getIdentifier("label_" + i, "id", mPackageName));
if (dayTV != null) {
dayTV.setTextSize(mDayTextSize);
dayTV.setTextColor(mWeakTextColor);
int index = i;
if (!mSundayFirst)
index = (index + 1) % letters.length;
dayTV.setText(getString(letters[index]));
}
}
}
}