From 5114983142399b8c2d851eae65c9d1a834db19c0 Mon Sep 17 00:00:00 2001 From: Andrey Samoykin Date: Fri, 26 Jun 2026 21:52:11 +0900 Subject: [PATCH] upd --- app/src/main/AndroidManifest.xml | 4 +- .../homework/viewandresources/CartActivity.kt | 15 +- .../viewandresources/ContactsActivity.kt | 44 +++- .../homework/viewandresources/MainActivity.kt | 28 +- app/src/main/res/drawable/bg_dialog.xml | 5 + .../main/res/drawable/cart_product_image.xml | 30 +++ .../main/res/drawable/ic_account_circle.xml | 1 + app/src/main/res/drawable/ic_arrow_back.xml | 1 + app/src/main/res/drawable/ic_assignment.xml | 1 + app/src/main/res/drawable/ic_attach_file.xml | 1 + app/src/main/res/drawable/ic_bookmark.xml | 1 + app/src/main/res/drawable/ic_calendar.xml | 1 + app/src/main/res/drawable/ic_close_circle.xml | 1 + app/src/main/res/drawable/ic_menu.xml | 1 + app/src/main/res/drawable/ic_mic.xml | 1 + app/src/main/res/drawable/ic_mood.xml | 1 + app/src/main/res/drawable/ic_more_vert.xml | 1 + app/src/main/res/drawable/ic_person.xml | 1 + app/src/main/res/layout/activity_cart.xml | 210 ++++++++++++++- app/src/main/res/layout/activity_contacts.xml | 245 +++++++++++++++++- app/src/main/res/layout/activity_main.xml | 70 ++++- app/src/main/res/layout/dialog_signin.xml | 101 +++++++- app/src/main/res/layout/item_cart_product.xml | 79 ++++++ app/src/main/res/values-night/bools.xml | 4 + app/src/main/res/values-night/colors.xml | 16 ++ app/src/main/res/values-night/strings.xml | 4 + app/src/main/res/values-night/themes.xml | 7 - app/src/main/res/values/bools.xml | 4 + app/src/main/res/values/colors.xml | 22 +- app/src/main/res/values/dimens.xml | 4 + app/src/main/res/values/strings.xml | 56 +++- app/src/main/res/values/themes.xml | 36 ++- 32 files changed, 949 insertions(+), 47 deletions(-) create mode 100644 app/src/main/res/drawable/bg_dialog.xml create mode 100644 app/src/main/res/drawable/cart_product_image.xml create mode 100644 app/src/main/res/drawable/ic_account_circle.xml create mode 100644 app/src/main/res/drawable/ic_arrow_back.xml create mode 100644 app/src/main/res/drawable/ic_assignment.xml create mode 100644 app/src/main/res/drawable/ic_attach_file.xml create mode 100644 app/src/main/res/drawable/ic_bookmark.xml create mode 100644 app/src/main/res/drawable/ic_calendar.xml create mode 100644 app/src/main/res/drawable/ic_close_circle.xml create mode 100644 app/src/main/res/drawable/ic_menu.xml create mode 100644 app/src/main/res/drawable/ic_mic.xml create mode 100644 app/src/main/res/drawable/ic_mood.xml create mode 100644 app/src/main/res/drawable/ic_more_vert.xml create mode 100644 app/src/main/res/drawable/ic_person.xml create mode 100644 app/src/main/res/layout/item_cart_product.xml create mode 100644 app/src/main/res/values-night/bools.xml create mode 100644 app/src/main/res/values-night/colors.xml create mode 100644 app/src/main/res/values-night/strings.xml delete mode 100644 app/src/main/res/values-night/themes.xml create mode 100644 app/src/main/res/values/bools.xml create mode 100644 app/src/main/res/values/dimens.xml diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 608e135..727c614 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -15,11 +15,11 @@ tools:targetApi="31"> + findViewById(itemId) + .findViewById(R.id.item_title) + .text = getString(R.string.cart_item_title, number) + } } -} \ No newline at end of file +} diff --git a/app/src/main/java/otus/gpb/homework/viewandresources/ContactsActivity.kt b/app/src/main/java/otus/gpb/homework/viewandresources/ContactsActivity.kt index 25f1ffb..5e516d3 100644 --- a/app/src/main/java/otus/gpb/homework/viewandresources/ContactsActivity.kt +++ b/app/src/main/java/otus/gpb/homework/viewandresources/ContactsActivity.kt @@ -1,11 +1,51 @@ package otus.gpb.homework.viewandresources -import androidx.appcompat.app.AppCompatActivity import android.os.Bundle +import android.widget.ArrayAdapter +import androidx.appcompat.app.AppCompatActivity +import com.google.android.material.datepicker.MaterialDatePicker +import com.google.android.material.textfield.TextInputEditText +import com.google.android.material.textfield.TextInputLayout +import com.google.android.material.textfield.MaterialAutoCompleteTextView +import java.text.SimpleDateFormat +import java.util.Date +import java.util.Locale class ContactsActivity : AppCompatActivity() { + private val dateFormat = SimpleDateFormat("dd.MM.yyyy", Locale.getDefault()) + override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_contacts) + + val contactTypes = resources.getStringArray(R.array.contact_type_options) + findViewById(R.id.contact_type_dropdown).apply { + setAdapter( + ArrayAdapter( + this@ContactsActivity, + android.R.layout.simple_list_item_1, + contactTypes, + ), + ) + setText(getString(R.string.contact_type), false) + setOnClickListener { showDropDown() } + } + + val dateInput = findViewById(R.id.date_input) + val dateLayout = findViewById(R.id.date_layout) + val showDatePicker = { + val picker = MaterialDatePicker.Builder.datePicker() + .setTitleText(getString(R.string.field_date)) + .setSelection(MaterialDatePicker.todayInUtcMilliseconds()) + .build() + + picker.addOnPositiveButtonClickListener { selection -> + dateInput.setText(dateFormat.format(Date(selection))) + } + picker.show(supportFragmentManager, "contact_date_picker") + } + + dateInput.setOnClickListener { showDatePicker() } + dateLayout.setEndIconOnClickListener { showDatePicker() } } -} \ No newline at end of file +} diff --git a/app/src/main/java/otus/gpb/homework/viewandresources/MainActivity.kt b/app/src/main/java/otus/gpb/homework/viewandresources/MainActivity.kt index 22b779c..2418e06 100644 --- a/app/src/main/java/otus/gpb/homework/viewandresources/MainActivity.kt +++ b/app/src/main/java/otus/gpb/homework/viewandresources/MainActivity.kt @@ -1,10 +1,16 @@ package otus.gpb.homework.viewandresources +import android.graphics.Color +import android.graphics.drawable.ColorDrawable import android.content.Intent import android.os.Bundle +import android.view.ViewGroup import android.widget.Button +import android.widget.TextView +import android.widget.Toast import androidx.appcompat.app.AppCompatActivity import com.google.android.material.dialog.MaterialAlertDialogBuilder +import kotlin.math.min class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { @@ -19,9 +25,27 @@ class MainActivity : AppCompatActivity() { } findViewById