finally sussed out the inconsistent text size issue, works on xxhdpi displays, probably will update to try and make it work on all dpi levels

This commit is contained in:
Odweta
2024-09-22 18:51:09 +02:00
parent 38d1d8578e
commit 1202cf2e86
9 changed files with 50 additions and 32 deletions
+8
View File
@@ -4,6 +4,14 @@
<selectionStates>
<SelectionState runConfigName="app">
<option name="selectionMode" value="DROPDOWN" />
<DropdownSelection timestamp="2024-09-22T16:40:27.288755501Z">
<Target type="DEFAULT_BOOT">
<handle>
<DeviceId pluginId="LocalEmulator" identifier="path=/home/thinker/.android/avd/5_inch_API_31.avd" />
</handle>
</Target>
</DropdownSelection>
<DialogSelection />
</SelectionState>
</selectionStates>
</component>
+1 -1
View File
@@ -12,7 +12,7 @@ android {
minSdk = 28
targetSdk = 34
versionCode = 1
versionName = "1.0.7"
versionName = "1.0.8"
}
buildTypes {
@@ -50,10 +50,10 @@ class AboutFragment : DialogFragment() {
val link = view.findViewById<TextView>(R.id.link)
val underlinedText = SpannableString(link.text)
underlinedText.setSpan(UnderlineSpan(), 1, link.text.length, 0)
underlinedText.setSpan(UnderlineSpan(), 8, link.text.length, 0)
link.text = underlinedText
makeTextViewClickable(link, "https://gitlab.com/Odweta", 1)
makeTextViewClickable(link, "https://gitlab.com/Odweta", 8)
val srcLink = view.findViewById<TextView>(R.id.sourceCode)
@@ -263,7 +263,7 @@ class DayFragment : Fragment() {
val nameDateTextView = TextView(requireContext())
nameDateTextView.text = String.format("%s %s", day.name, day.date)
nameDateTextView.setTypeface(customFont, Typeface.BOLD_ITALIC)
nameDateTextView.textSize = 28f
//nameDateTextView.textSize = 28f
nameDateTextView.setTextColor(
ContextCompat.getColor(
requireContext(),
@@ -366,7 +366,7 @@ class DayFragment : Fragment() {
val subjectNumberTextView = TextView(requireContext())
subjectNumberTextView.typeface = customFont
subjectNumberTextView.text = subj.number
subjectNumberTextView.textSize = 33f
//subjectNumberTextView.textSize = 33f
subjectNumberTextView.setPadding(20, 20, 20, 20)
subjectNumberTextView.gravity = Gravity.CENTER // Center text vertically
subjectNumberTextView.setTextColor(
@@ -399,7 +399,7 @@ class DayFragment : Fragment() {
subjectNameTextView.text = subj.name.uppercase()
}
subjectNameTextView.setTypeface(customFont, Typeface.BOLD)
subjectNameTextView.textSize = 29f
//subjectNameTextView.textSize = 29f
subjectNameTextView.setPadding(0, 0, 0, 0)
subjectNameTextView.gravity = Gravity.CENTER_VERTICAL
subjectNameTextView.setTextColor(
@@ -422,7 +422,7 @@ class DayFragment : Fragment() {
subjectPlaceTextView.setTypeface(customFont, Typeface.ITALIC)
subjectPlaceTextView.text = "Volno "
}
subjectPlaceTextView.textSize = 22f
//subjectPlaceTextView.textSize = 22f
subjectPlaceTextView.gravity = Gravity.CENTER_VERTICAL
subjectPlaceTextView.setTextColor(
ContextCompat.getColor(
@@ -454,7 +454,7 @@ class DayFragment : Fragment() {
val subjectTimeString = subj.start + "" + subj.end
subjectTimeTextView.typeface = customFont
subjectTimeTextView.text = subjectTimeString
subjectTimeTextView.textSize = 20f
//subjectTimeTextView.textSize = 20f
subjectTimeTextView.setPadding(10, 0, 20, 0)
subjectTimeTextView.gravity = Gravity.END
subjectTimeTextView.isSingleLine = true
@@ -469,7 +469,7 @@ class DayFragment : Fragment() {
val subjectTeacherTextView = TextView(requireContext())
subjectTeacherTextView.text = subj.teacher
subjectTeacherTextView.typeface = customFont
subjectTeacherTextView.textSize = 15f
//subjectTeacherTextView.textSize = 15f
subjectTeacherTextView.setPadding(0, 10, 20, 10)
subjectTeacherTextView.textAlignment = View.TEXT_ALIGNMENT_TEXT_END
subjectTeacherTextView.setTextColor(
@@ -575,6 +575,18 @@ class DayFragment : Fragment() {
dayLayout.addView(subjectSeparator)
}
subjectNumberTextView.textSize = resources.getDimension(R.dimen.text_size_subject_number) / resources.displayMetrics.scaledDensity
subjectNameTextView.textSize = resources.getDimension(R.dimen.text_size_subject_name) / resources.displayMetrics.scaledDensity
if (subj.free) {
subjectPlaceTextView.textSize =
resources.getDimension(R.dimen.text_size_subject_place_free) / resources.displayMetrics.scaledDensity
} else {
subjectPlaceTextView.textSize =
resources.getDimension(R.dimen.text_size_subject_place) / resources.displayMetrics.scaledDensity
}
subjectTimeTextView.textSize = resources.getDimension(R.dimen.text_size_subject_time) / resources.displayMetrics.scaledDensity
subjectTeacherTextView.textSize = resources.getDimension(R.dimen.text_size_subject_teacher) / resources.displayMetrics.scaledDensity
dayLayout.addView(subjectLayout)
prevSubj = subj
@@ -593,7 +605,7 @@ class DayFragment : Fragment() {
Vars.dayEndString = "Den končí v $endTime"
dayEndTextView.text = Vars.dayEndString
dayEndTextView.typeface = customFont
dayEndTextView.setAutoSizeTextTypeUniformWithConfiguration(55, 85, 1, 0)
//dayEndTextView.setAutoSizeTextTypeUniformWithConfiguration(55, 85, 1, 0)
dayEndTextView.setPadding(0, 25, 0, 25)
dayEndTextView.textAlignment = View.TEXT_ALIGNMENT_CENTER
dayEndTextView.gravity = Gravity.CENTER
@@ -661,6 +673,9 @@ class DayFragment : Fragment() {
)
rootLayout.addView(sepr)
nameDateTextView.textSize = resources.getDimension(R.dimen.text_size_name_date) / resources.displayMetrics.scaledDensity
dayEndTextView.textSize = resources.getDimension(R.dimen.text_size_day_end) / resources.displayMetrics.scaledDensity
}
}
@@ -37,7 +37,8 @@ class MainFragment : Fragment() {
private fun setup(view: View) {
toolbar = view.findViewById(R.id.toolbar)
toolbar.setAutoSizeTextTypeUniformWithConfiguration(60, 65, 1, 0)
//toolbar.setAutoSizeTextTypeUniformWithConfiguration(60, 65, 1, 0)
toolbar.textSize = resources.getDimension(R.dimen.text_size_toolbar) / resources.displayMetrics.scaledDensity
toolbar.ellipsize = null
toolbar.setHorizontallyScrolling(false)
@@ -27,7 +27,7 @@
android:padding="10dp"
android:text="@string/about_app"
android:textColor="@color/white"
android:textSize="25sp" />
android:textSize="@dimen/text_size_toolbar" />
</com.google.android.material.appbar.AppBarLayout>
@@ -82,30 +82,13 @@
style="@style/LinkText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginEnd="139dp"
android:text="@string/odweta"
android:text="Vývoj: @Odweta"
android:textColor="#FFFFFF"
android:textFontWeight="400"
android:textSize="20sp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/textView3"
app:layout_constraintTop_toBottomOf="@+id/textView"
app:layout_constraintVertical_bias="0.3" />
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="144dp"
android:layout_marginEnd="1dp"
android:text="@string/development_vyvoj"
android:textColor="#FFFFFF"
android:textSize="20sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/link"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/textView"
app:layout_constraintVertical_bias="0.3" />
+12 -1
View File
@@ -1,4 +1,15 @@
<resources>
<resources xmlns:tools="http://schemas.android.com/tools">
<dimen name="cal_week_separator_height">16dp</dimen>
<dimen name="corner_radius">8dp</dimen>
<dimen name="text_size_name_date">35sp</dimen>
<dimen name="text_size_subject_number">40sp</dimen>
<dimen name="text_size_subject_name">30sp</dimen>
<dimen name="text_size_subject_place">24sp</dimen>
<dimen name="text_size_subject_place_free">28sp</dimen>
<dimen name="text_size_subject_time">24sp</dimen>
<dimen name="text_size_subject_teacher">15sp</dimen>
<dimen name="text_size_day_end">28sp</dimen>
<dimen name="text_size_toolbar">26sp</dimen>
<dimen name="design_bottom_navigation_text_size" tools:override="true">15sp</dimen>
<dimen name="design_bottom_navigation_active_text_size" tools:override="true">15sp</dimen>
</resources>