mirror of
https://github.com/SimpleMobileTools/Simple-Calendar.git
synced 2025-06-05 21:59:17 +02:00
move the week day letters in MonthView too
This commit is contained in:
@@ -203,10 +203,10 @@ class WidgetMonthlyConfigureActivity : SimpleActivity(), MonthlyCalendar {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun updateLabels() {
|
private fun updateLabels() {
|
||||||
for (i in 0..6) {
|
/*for (i in 0..6) {
|
||||||
findViewById<TextView>(mRes.getIdentifier("label_$i", "id", mPackageName)).apply {
|
findViewById<TextView>(mRes.getIdentifier("label_$i", "id", mPackageName)).apply {
|
||||||
setTextColor(mTextColor)
|
setTextColor(mTextColor)
|
||||||
}
|
}
|
||||||
}
|
}*/
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -10,7 +10,6 @@ import android.view.View
|
|||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
import android.widget.DatePicker
|
import android.widget.DatePicker
|
||||||
import android.widget.RelativeLayout
|
import android.widget.RelativeLayout
|
||||||
import android.widget.TextView
|
|
||||||
import com.simplemobiletools.calendar.R
|
import com.simplemobiletools.calendar.R
|
||||||
import com.simplemobiletools.calendar.extensions.config
|
import com.simplemobiletools.calendar.extensions.config
|
||||||
import com.simplemobiletools.calendar.helpers.Config
|
import com.simplemobiletools.calendar.helpers.Config
|
||||||
@@ -152,7 +151,7 @@ class MonthFragment : Fragment(), MonthlyCalendar {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun setupLabels() {
|
private fun setupLabels() {
|
||||||
val letters = context!!.resources.getStringArray(R.array.week_day_letters)
|
/*val letters = context!!.resources.getStringArray(R.array.week_day_letters)
|
||||||
for (i in 0..6) {
|
for (i in 0..6) {
|
||||||
var index = i
|
var index = i
|
||||||
if (mSundayFirst) {
|
if (mSundayFirst) {
|
||||||
@@ -163,7 +162,7 @@ class MonthFragment : Fragment(), MonthlyCalendar {
|
|||||||
setTextColor(mTextColor)
|
setTextColor(mTextColor)
|
||||||
text = letters[index]
|
text = letters[index]
|
||||||
}
|
}
|
||||||
}
|
}*/
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun updateDays(days: ArrayList<DayMonthly>) {
|
private fun updateDays(days: ArrayList<DayMonthly>) {
|
||||||
|
@@ -12,6 +12,7 @@ import com.simplemobiletools.calendar.models.DayMonthly
|
|||||||
import com.simplemobiletools.commons.extensions.adjustAlpha
|
import com.simplemobiletools.commons.extensions.adjustAlpha
|
||||||
import com.simplemobiletools.commons.extensions.getAdjustedPrimaryColor
|
import com.simplemobiletools.commons.extensions.getAdjustedPrimaryColor
|
||||||
import com.simplemobiletools.commons.extensions.getContrastColor
|
import com.simplemobiletools.commons.extensions.getContrastColor
|
||||||
|
import com.simplemobiletools.commons.extensions.moveLastItemToFront
|
||||||
|
|
||||||
// used in the Monthly view fragment, 1 view per screen
|
// used in the Monthly view fragment, 1 view per screen
|
||||||
class MonthView(context: Context, attrs: AttributeSet, defStyle: Int) : View(context, attrs, defStyle) {
|
class MonthView(context: Context, attrs: AttributeSet, defStyle: Int) : View(context, attrs, defStyle) {
|
||||||
@@ -21,6 +22,8 @@ class MonthView(context: Context, attrs: AttributeSet, defStyle: Int) : View(con
|
|||||||
private var primaryColor = 0
|
private var primaryColor = 0
|
||||||
private var textColor = 0
|
private var textColor = 0
|
||||||
private var weakTextColor = 0
|
private var weakTextColor = 0
|
||||||
|
private var weekDaysLetterHeight = 0
|
||||||
|
private var dayLetters = ArrayList<String>()
|
||||||
private var days = ArrayList<DayMonthly>()
|
private var days = ArrayList<DayMonthly>()
|
||||||
|
|
||||||
constructor(context: Context, attrs: AttributeSet) : this(context, attrs, 0)
|
constructor(context: Context, attrs: AttributeSet) : this(context, attrs, 0)
|
||||||
@@ -30,11 +33,18 @@ class MonthView(context: Context, attrs: AttributeSet, defStyle: Int) : View(con
|
|||||||
textColor = context.config.textColor
|
textColor = context.config.textColor
|
||||||
weakTextColor = textColor.adjustAlpha(LOW_ALPHA)
|
weakTextColor = textColor.adjustAlpha(LOW_ALPHA)
|
||||||
|
|
||||||
|
val normalTextSize = resources.getDimensionPixelSize(R.dimen.normal_text_size).toFloat()
|
||||||
paint = Paint(Paint.ANTI_ALIAS_FLAG).apply {
|
paint = Paint(Paint.ANTI_ALIAS_FLAG).apply {
|
||||||
color = textColor
|
color = textColor
|
||||||
textSize = resources.getDimensionPixelSize(R.dimen.normal_text_size).toFloat()
|
textSize = normalTextSize
|
||||||
textAlign = Paint.Align.CENTER
|
textAlign = Paint.Align.CENTER
|
||||||
}
|
}
|
||||||
|
|
||||||
|
weekDaysLetterHeight = 2 * normalTextSize.toInt()
|
||||||
|
dayLetters = context.resources.getStringArray(R.array.week_day_letters).toList() as ArrayList<String>
|
||||||
|
if (context.config.isSundayFirst) {
|
||||||
|
dayLetters.moveLastItemToFront()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fun updateDays(newDays: ArrayList<DayMonthly>) {
|
fun updateDays(newDays: ArrayList<DayMonthly>) {
|
||||||
@@ -49,7 +59,12 @@ class MonthView(context: Context, attrs: AttributeSet, defStyle: Int) : View(con
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (dayHeight == 0f) {
|
if (dayHeight == 0f) {
|
||||||
dayHeight = (canvas.height / 6).toFloat()
|
dayHeight = ((canvas.height - weekDaysLetterHeight) / 6).toFloat()
|
||||||
|
}
|
||||||
|
|
||||||
|
for (i in 0..6) {
|
||||||
|
val xPos = (i + 1) * dayWidth - dayWidth / 2
|
||||||
|
canvas.drawText(dayLetters[i], xPos, weekDaysLetterHeight / 2f, paint)
|
||||||
}
|
}
|
||||||
|
|
||||||
var curId = 0
|
var curId = 0
|
||||||
@@ -58,7 +73,7 @@ class MonthView(context: Context, attrs: AttributeSet, defStyle: Int) : View(con
|
|||||||
val day = days.getOrNull(curId)
|
val day = days.getOrNull(curId)
|
||||||
if (day != null) {
|
if (day != null) {
|
||||||
val xPos = x * dayWidth - dayWidth / 2
|
val xPos = x * dayWidth - dayWidth / 2
|
||||||
val yPos = y * dayHeight
|
val yPos = y * dayHeight + weekDaysLetterHeight
|
||||||
if (day.isToday) {
|
if (day.isToday) {
|
||||||
canvas.drawCircle(xPos, yPos + paint.textSize * 0.7f, paint.textSize * 0.75f, getCirclePaint(day))
|
canvas.drawCircle(xPos, yPos + paint.textSize * 0.7f, paint.textSize * 0.75f, getCirclePaint(day))
|
||||||
}
|
}
|
||||||
|
@@ -1,7 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<RelativeLayout
|
<RelativeLayout
|
||||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
|
||||||
android:id="@+id/month_calendar_holder"
|
android:id="@+id/month_calendar_holder"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
@@ -9,19 +8,10 @@
|
|||||||
|
|
||||||
<include layout="@layout/top_navigation"/>
|
<include layout="@layout/top_navigation"/>
|
||||||
|
|
||||||
<include
|
|
||||||
android:id="@+id/first_row"
|
|
||||||
layout="@layout/first_row"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_below="@+id/top_value"
|
|
||||||
tools:ignore="UnknownIdInLayout"/>
|
|
||||||
|
|
||||||
<com.simplemobiletools.calendar.views.MonthView
|
<com.simplemobiletools.calendar.views.MonthView
|
||||||
android:id="@+id/month_view"
|
android:id="@+id/month_view"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_below="@+id/first_row"
|
android:layout_below="@+id/top_left_arrow"/>
|
||||||
android:layout_centerInParent="true"/>
|
|
||||||
|
|
||||||
</RelativeLayout>
|
</RelativeLayout>
|
||||||
|
Reference in New Issue
Block a user