Changed AddCharge-Components to Material2-Componente, added Dropdown to editBatteryId

This commit is contained in:
sockenklaus
2022-07-13 23:16:44 +02:00
parent bef13af24e
commit b8abc9326e
9 changed files with 67 additions and 36 deletions

View File

@@ -1,17 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="deploymentTargetDropDown">
<runningDeviceTargetSelectedWithDropDown>
<Target>
<type value="RUNNING_DEVICE_TARGET" />
<deviceKey>
<Key>
<type value="VIRTUAL_DEVICE_PATH" />
<value value="C:\Android\.android\avd\Pixel_3a_XL_API_29.avd" />
</Key>
</deviceKey>
</Target>
</runningDeviceTargetSelectedWithDropDown>
<targetSelectedWithDropDown>
<Target>
<type value="QUICK_BOOT_TARGET" />

1
.idea/misc.xml generated
View File

@@ -15,6 +15,7 @@
<entry key="..\:/Users/socrates/AndroidStudioProjects/BatteryTracker/app/src/main/res/layout/fragment_home.xml" value="0.425" />
<entry key="..\:/Users/socrates/AndroidStudioProjects/BatteryTracker/app/src/main/res/layout/fragment_settings.xml" value="0.425" />
<entry key="..\:/Users/socrates/AndroidStudioProjects/BatteryTracker/app/src/main/res/layout/fragment_slideshow.xml" value="0.425" />
<entry key="..\:/Users/socrates/AndroidStudioProjects/BatteryTracker/app/src/main/res/layout/list_item.xml" value="0.18640444634459172" />
<entry key="..\:/Users/socrates/AndroidStudioProjects/BatteryTracker/app/src/main/res/layout/nav_header_main.xml" value="0.425" />
<entry key="..\:/Users/socrates/AndroidStudioProjects/BatteryTracker/app/src/main/res/menu/activity_main_drawer.xml" value="0.33" />
<entry key="..\:/Users/socrates/AndroidStudioProjects/BatteryTracker/app/src/main/res/menu/main.xml" value="0.425" />

View File

@@ -36,12 +36,12 @@ android {
dependencies {
implementation 'androidx.core:core-ktx:1.7.0'
implementation 'androidx.core:core-ktx:1.8.0'
implementation 'androidx.appcompat:appcompat:1.4.2'
implementation 'com.google.android.material:material:1.6.1'
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.3.1'
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1'
implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.5.0'
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0'
implementation 'androidx.navigation:navigation-fragment-ktx:2.5.0'
implementation 'androidx.navigation:navigation-ui-ktx:2.5.0'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'

View File

@@ -6,11 +6,15 @@ import androidx.fragment.app.Fragment
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.ArrayAdapter
import android.widget.AutoCompleteTextView
import com.google.android.material.datepicker.MaterialDatePicker
import com.sockenklaus.batterytracker.R
import com.sockenklaus.batterytracker.databinding.FragmentAddChargeBinding
import java.time.LocalDate
import java.time.format.DateTimeFormatter
import java.time.format.FormatStyle
import java.util.*
class AddChargeFragment : Fragment() {
@@ -31,11 +35,18 @@ class AddChargeFragment : Fragment() {
_binding = FragmentAddChargeBinding.inflate(inflater, container, false)
viewModel = ViewModelProvider(this)[AddChargeViewModel::class.java]
val current = LocalDate.now()
val formatter = DateTimeFormatter.ofPattern("dd.MM.yyyy")
val formatted = current.format(formatter) ?: ""
// TODO: Add viewModel!!
val items = listOf("E1", "E2", "E3", "E4", "Bonsai", "Bonai")
val adapter = ArrayAdapter(requireContext(), R.layout.list_item, items)
binding.editDate.setText(formatted)
(binding.editBatteryId.editText as? AutoCompleteTextView)?.setAdapter(adapter)
val current: LocalDate = LocalDate.now()
val formatter: DateTimeFormatter = DateTimeFormatter.ofLocalizedDate(FormatStyle.LONG).withLocale(Locale.GERMANY)
val formatted: String = current.format(formatter) ?: ""
binding.editDate.text = formatted
binding.fab.setOnClickListener{
buttonClicked()

View File

@@ -0,0 +1,5 @@
<vector android:height="24dp" android:tint="#000000"
android:viewportHeight="24" android:viewportWidth="24"
android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="@android:color/white" android:pathData="M12,22H5c-1.11,0 -2,-0.9 -2,-2L3.01,6c0,-1.1 0.88,-2 1.99,-2h1V2h2v2h8V2h2v2h1c1.1,0 2,0.9 2,2v6h-2v-2H5v10h7V22zM22.13,16.99l0.71,-0.71c0.39,-0.39 0.39,-1.02 0,-1.41l-0.71,-0.71c-0.39,-0.39 -1.02,-0.39 -1.41,0l-0.71,0.71L22.13,16.99zM21.42,17.7l-5.3,5.3H14v-2.12l5.3,-5.3L21.42,17.7z"/>
</vector>

View File

@@ -6,48 +6,61 @@
android:layout_height="match_parent"
tools:context=".ui.add_charge.AddChargeFragment">
<EditText
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/edit_battery_id"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="24dp"
android:layout_marginTop="24dp"
android:layout_marginEnd="24dp"
android:ems="10"
android:hint="Battery ID"
android:inputType="textShortMessage"
android:minHeight="48dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/text_battery_id"
app:layout_constraintTop_toTopOf="parent" />
app:layout_constraintTop_toTopOf="parent"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.ExposedDropdownMenu"
>
<AutoCompleteTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="text"/>
</com.google.android.material.textfield.TextInputLayout>
<Button
android:id="@+id/edit_date"
android:layout_width="0dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:layout_marginEnd="24dp"
android:ems="10"
android:hint="Date"
android:minHeight="48dp"
style="@style/Widget.MaterialComponents.Button.TextButton"
app:layout_constraintEnd_toEndOf="parent"
app:icon="@drawable/ic_baseline_edit_calendar_24"
style="@style/Widget.MaterialComponents.Button.TextButton.Icon"
app:layout_constraintStart_toStartOf="@+id/edit_battery_id"
app:layout_constraintTop_toBottomOf="@+id/edit_battery_id" />
<EditText
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/edit_charge"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:layout_marginEnd="24dp"
android:ems="10"
android:hint="Charge, decimal"
android:inputType="number"
android:minHeight="48dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="@+id/edit_date"
app:layout_constraintTop_toBottomOf="@+id/edit_date" />
app:layout_constraintTop_toBottomOf="@+id/edit_date"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox">
<com.google.android.material.textfield.TextInputEditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="numberDecimal"
/>
</com.google.android.material.textfield.TextInputLayout>
<TextView
android:id="@+id/text_battery_id"

View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="16dp"
android:ellipsize="end"
android:maxLines="1"
android:textAppearance="?attr/textAppearanceSubtitle1">
</TextView>

View File

@@ -10,7 +10,7 @@
<item name="colorSecondaryVariant">@color/teal_700</item>
<item name="colorOnSecondary">@color/black</item>
<!-- Status bar color. -->
<item name="android:statusBarColor" tools:targetApi="l">?attr/colorPrimaryVariant</item>
<item name="android:statusBarColor" >?attr/colorPrimaryVariant</item>
<!-- Customize your theme here. -->
</style>

View File

@@ -20,4 +20,5 @@ kotlin.code.style=official
# Enables namespacing of each library's R class so that its R class includes only the
# resources declared in the library itself and none from the library's dependencies,
# thereby reducing the size of the R class for that library
android.nonTransitiveRClass=true
android.nonTransitiveRClass=true
android.enableJetifier=true