From bf865cd1507071855f3ce7af8cab9e03c6a32ff6 Mon Sep 17 00:00:00 2001 From: atuzhilov Date: Mon, 6 Jan 2025 15:12:18 +0300 Subject: [PATCH] layouts activity_cart, activity_contacts, cart_list_item and dialog_signin have been added --- app/build.gradle | 2 +- .../homework/viewandresources/CartActivity.kt | 16 +- .../gpb/homework/viewandresources/CartItem.kt | 8 + .../viewandresources/CartItemViewAdapter.kt | 39 ++++ .../viewandresources/ContactsActivity.kt | 2 +- app/src/main/res/drawable/ic_address.xml | 13 ++ app/src/main/res/drawable/ic_back_arrow.xml | 13 ++ app/src/main/res/drawable/ic_cart_item.png | Bin 0 -> 1698 bytes app/src/main/res/drawable/ic_clip.xml | 9 + app/src/main/res/drawable/ic_close.xml | 9 + app/src/main/res/drawable/ic_date.xml | 13 ++ app/src/main/res/drawable/ic_menu.xml | 13 ++ app/src/main/res/drawable/ic_mood.xml | 9 + app/src/main/res/drawable/ic_more.xml | 9 + app/src/main/res/drawable/ic_notes.xml | 13 ++ app/src/main/res/drawable/ic_phone.xml | 13 ++ app/src/main/res/drawable/ic_profile.xml | 13 ++ .../main/res/drawable/iv_show_password.xml | 13 ++ app/src/main/res/layout/activity_cart.xml | 129 +++++++++++++ app/src/main/res/layout/activity_contacts.xml | 181 ++++++++++++++++++ app/src/main/res/layout/cart_list_item.xml | 72 +++++++ app/src/main/res/layout/dialog_signin.xml | 81 +++++++- app/src/main/res/menu/menu_cart.xml | 12 ++ app/src/main/res/menu/menu_contracts.xml | 18 ++ app/src/main/res/menu/menu_dialog.xml | 12 ++ app/src/main/res/values-night/themes.xml | 12 +- app/src/main/res/values/arrays.xml | 7 + app/src/main/res/values/attrs.xml | 24 +++ app/src/main/res/values/colors.xml | 23 +++ app/src/main/res/values/dimen.xml | 8 + app/src/main/res/values/strings.xml | 32 ++++ app/src/main/res/values/style.xml | 58 ++++++ app/src/main/res/values/themes.xml | 13 +- 33 files changed, 882 insertions(+), 7 deletions(-) create mode 100644 app/src/main/java/otus/gpb/homework/viewandresources/CartItem.kt create mode 100644 app/src/main/java/otus/gpb/homework/viewandresources/CartItemViewAdapter.kt create mode 100644 app/src/main/res/drawable/ic_address.xml create mode 100644 app/src/main/res/drawable/ic_back_arrow.xml create mode 100644 app/src/main/res/drawable/ic_cart_item.png create mode 100644 app/src/main/res/drawable/ic_clip.xml create mode 100644 app/src/main/res/drawable/ic_close.xml create mode 100644 app/src/main/res/drawable/ic_date.xml create mode 100644 app/src/main/res/drawable/ic_menu.xml create mode 100644 app/src/main/res/drawable/ic_mood.xml create mode 100644 app/src/main/res/drawable/ic_more.xml create mode 100644 app/src/main/res/drawable/ic_notes.xml create mode 100644 app/src/main/res/drawable/ic_phone.xml create mode 100644 app/src/main/res/drawable/ic_profile.xml create mode 100644 app/src/main/res/drawable/iv_show_password.xml create mode 100644 app/src/main/res/layout/cart_list_item.xml create mode 100644 app/src/main/res/menu/menu_cart.xml create mode 100644 app/src/main/res/menu/menu_contracts.xml create mode 100644 app/src/main/res/menu/menu_dialog.xml create mode 100644 app/src/main/res/values/arrays.xml create mode 100644 app/src/main/res/values/attrs.xml create mode 100644 app/src/main/res/values/dimen.xml create mode 100644 app/src/main/res/values/style.xml diff --git a/app/build.gradle b/app/build.gradle index debcfaf..30d01de 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -8,7 +8,7 @@ android { namespace = "otus.gpb.homework.viewandresources" defaultConfig { applicationId "otus.gpb.homework.viewandresources" - minSdk 23 + minSdk 26 targetSdk 35 versionCode 1 versionName "1.0" diff --git a/app/src/main/java/otus/gpb/homework/viewandresources/CartActivity.kt b/app/src/main/java/otus/gpb/homework/viewandresources/CartActivity.kt index b6cbf73..74b6262 100644 --- a/app/src/main/java/otus/gpb/homework/viewandresources/CartActivity.kt +++ b/app/src/main/java/otus/gpb/homework/viewandresources/CartActivity.kt @@ -2,10 +2,24 @@ package otus.gpb.homework.viewandresources import androidx.appcompat.app.AppCompatActivity import android.os.Bundle +import androidx.recyclerview.widget.DividerItemDecoration +import androidx.recyclerview.widget.RecyclerView class CartActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_cart) + + val recyclerView: RecyclerView = findViewById(R.id.cart_rv) + recyclerView.addItemDecoration(DividerItemDecoration(this, DividerItemDecoration.VERTICAL)) + + val cartItemsList = listOf( + CartItem("List item 1","Category", getString(R.string.card_description), "$35"), + CartItem("List item 2","Category", getString(R.string.card_description), "$35"), + CartItem("List item 3","Category", getString(R.string.card_description), "$35"), + CartItem("List item 4","Category", getString(R.string.card_description), "$35"), + ) + + recyclerView.adapter = CartItemViewAdapter(cartItemsList) } -} \ No newline at end of file +} diff --git a/app/src/main/java/otus/gpb/homework/viewandresources/CartItem.kt b/app/src/main/java/otus/gpb/homework/viewandresources/CartItem.kt new file mode 100644 index 0000000..1ab65cf --- /dev/null +++ b/app/src/main/java/otus/gpb/homework/viewandresources/CartItem.kt @@ -0,0 +1,8 @@ +package otus.gpb.homework.viewandresources + +data class CartItem( + val name: String?, + val category: String?, + val description: String?, + val price: String? +) diff --git a/app/src/main/java/otus/gpb/homework/viewandresources/CartItemViewAdapter.kt b/app/src/main/java/otus/gpb/homework/viewandresources/CartItemViewAdapter.kt new file mode 100644 index 0000000..68ea881 --- /dev/null +++ b/app/src/main/java/otus/gpb/homework/viewandresources/CartItemViewAdapter.kt @@ -0,0 +1,39 @@ +package otus.gpb.homework.viewandresources + +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import android.widget.ImageView +import android.widget.TextView +import androidx.recyclerview.widget.RecyclerView + +class CartItemViewAdapter(private var cartItem: List) : + RecyclerView.Adapter() { + + class CartItemViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) { + val name: TextView = itemView.findViewById(R.id.cart_item_title_tv) + val category: TextView = itemView.findViewById(R.id.cart_item_category_tv) + val description: TextView = itemView.findViewById(R.id.cart_item_description_tv) + val price: TextView = itemView.findViewById(R.id.cart_item_price_tv) + val itemImage: ImageView = itemView.findViewById(R.id.cart_item_iv) + } + + override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): CartItemViewHolder { + val view = + LayoutInflater.from(parent.context).inflate(R.layout.cart_list_item, parent, false) + return CartItemViewHolder(view) + } + + override fun getItemCount(): Int { + return cartItem.size + } + + override fun onBindViewHolder(holder: CartItemViewHolder, position: Int) { + val item = cartItem[position] + holder.itemImage.setImageResource(R.drawable.ic_cart_item) + holder.name.text = item.name + holder.category.text = item.category + holder.description.text = item.description + holder.price.text = item.price + } +} 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..93e5f1f 100644 --- a/app/src/main/java/otus/gpb/homework/viewandresources/ContactsActivity.kt +++ b/app/src/main/java/otus/gpb/homework/viewandresources/ContactsActivity.kt @@ -8,4 +8,4 @@ class ContactsActivity : AppCompatActivity() { super.onCreate(savedInstanceState) setContentView(R.layout.activity_contacts) } -} \ No newline at end of file +} diff --git a/app/src/main/res/drawable/ic_address.xml b/app/src/main/res/drawable/ic_address.xml new file mode 100644 index 0000000..0ea9ff5 --- /dev/null +++ b/app/src/main/res/drawable/ic_address.xml @@ -0,0 +1,13 @@ + + + + + + diff --git a/app/src/main/res/drawable/ic_back_arrow.xml b/app/src/main/res/drawable/ic_back_arrow.xml new file mode 100644 index 0000000..ad46632 --- /dev/null +++ b/app/src/main/res/drawable/ic_back_arrow.xml @@ -0,0 +1,13 @@ + + + + + + diff --git a/app/src/main/res/drawable/ic_cart_item.png b/app/src/main/res/drawable/ic_cart_item.png new file mode 100644 index 0000000000000000000000000000000000000000..677fe16ecf917fe9ee3849fa3ac98c215894dc4b GIT binary patch literal 1698 zcmV;T23`4yP)o<5vR0aXBid5^@5{H*ijn+#tC@>>HRH*f;PE5>60Yi4COyD~UJa zArMFcX?M~+JX{cgc1J5|m(2GMHi!j%>Y3^8Sq%m}V%zpWwThRp%t=5@7{Hhi7{Cp{ zFi;Rc2Ev#D-08T5_sL|k;OToCJ%GfG)m-xzlJ@gW5#|l!ZQOESlgP}qkGkp$9C0M> zHzCBY_&+0zH}RMhSvMl<3goD(y2kGi7=wl_W#XoIQ7;$BV~RRI4>PH-;?=Lm`l*WR{j2%Gul7 zM`3RdVWQ&#rM&DCEgTh3k6o~{6pdAcg^mm4v}I!}@A>fuhliBbtRXCPT;O6hiwdo> ze&7|kTxlG!?VzIqc~w=ZcU{-TN=TxxV*;zS8s-;msWj)1j%(r1lB0}7BktVpM0@c#QLW91*jEtL|~S3zMyK`B`W=nJDAqAT_7(SYa5#g ziV`&*IGQ^}+XXHyFUuhuBzc-oOP4x0?V_y$*Ect@OXXP5IF#1dnH)_EF4|4o1Rfn7 zQSP>mRWONf1i4V2dGf_$ceROS?KNQ zLE_dI7#A_lNnyLkF! zyqRbe3PV@~z7HXwR=;xXJDW}`?XB=L;5)%A%f#2?<1o#JZ(OZQWET-`%6^=iYieVP zSzX`2KMM=WK@nMjye&`&s5#3UQ~O1=TZtnnkcaMdx5D{_ud`@p<#qiMNr60f1%1bA z@$gXT&acP`3XFhlWmIsZ`!UoH7fgrT(P@2 zf22s`UAdvb0dzO9iFF3ORx>f-h!2Ko+z5dzX`JRWu9Yj5ifsG4Ldb|?VO_M!23ZEu zwPs>;xj*RNKj8+!!dg|WT*RF==|y?Z^B^?7;lpZ8J_nB`-gnUW#CXf@Wd7h-cms_u z9Ls&pAEm&QJknB3LE{lIl{!5J^gM&5@%)O9w}j?;_y|yTb;`Lw9?y;`UTBHeKyI9q zLuk(z-3v983`N0nss1s7%bXlm%jd0{lYHtWwY5g6=JekK s46n4zPIGnU_0M7a3p(WSl@r=uCjbBd07*qoM6N<$f?_NvqyPW_ literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/ic_clip.xml b/app/src/main/res/drawable/ic_clip.xml new file mode 100644 index 0000000..a22ffa7 --- /dev/null +++ b/app/src/main/res/drawable/ic_clip.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_close.xml b/app/src/main/res/drawable/ic_close.xml new file mode 100644 index 0000000..f6e9c9a --- /dev/null +++ b/app/src/main/res/drawable/ic_close.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_date.xml b/app/src/main/res/drawable/ic_date.xml new file mode 100644 index 0000000..92e278b --- /dev/null +++ b/app/src/main/res/drawable/ic_date.xml @@ -0,0 +1,13 @@ + + + + + + diff --git a/app/src/main/res/drawable/ic_menu.xml b/app/src/main/res/drawable/ic_menu.xml new file mode 100644 index 0000000..8351fb9 --- /dev/null +++ b/app/src/main/res/drawable/ic_menu.xml @@ -0,0 +1,13 @@ + + + + + + diff --git a/app/src/main/res/drawable/ic_mood.xml b/app/src/main/res/drawable/ic_mood.xml new file mode 100644 index 0000000..1357c9f --- /dev/null +++ b/app/src/main/res/drawable/ic_mood.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_more.xml b/app/src/main/res/drawable/ic_more.xml new file mode 100644 index 0000000..5c534f5 --- /dev/null +++ b/app/src/main/res/drawable/ic_more.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_notes.xml b/app/src/main/res/drawable/ic_notes.xml new file mode 100644 index 0000000..bbab49d --- /dev/null +++ b/app/src/main/res/drawable/ic_notes.xml @@ -0,0 +1,13 @@ + + + + + + diff --git a/app/src/main/res/drawable/ic_phone.xml b/app/src/main/res/drawable/ic_phone.xml new file mode 100644 index 0000000..741ddac --- /dev/null +++ b/app/src/main/res/drawable/ic_phone.xml @@ -0,0 +1,13 @@ + + + + + + diff --git a/app/src/main/res/drawable/ic_profile.xml b/app/src/main/res/drawable/ic_profile.xml new file mode 100644 index 0000000..ed435ca --- /dev/null +++ b/app/src/main/res/drawable/ic_profile.xml @@ -0,0 +1,13 @@ + + + + + + diff --git a/app/src/main/res/drawable/iv_show_password.xml b/app/src/main/res/drawable/iv_show_password.xml new file mode 100644 index 0000000..bf72fd6 --- /dev/null +++ b/app/src/main/res/drawable/iv_show_password.xml @@ -0,0 +1,13 @@ + + + + + + diff --git a/app/src/main/res/layout/activity_cart.xml b/app/src/main/res/layout/activity_cart.xml index 57dc4d4..01202d4 100644 --- a/app/src/main/res/layout/activity_cart.xml +++ b/app/src/main/res/layout/activity_cart.xml @@ -6,4 +6,133 @@ android:layout_height="match_parent" tools:context=".CartActivity"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_contacts.xml b/app/src/main/res/layout/activity_contacts.xml index 6ef087b..5dd2a3a 100644 --- a/app/src/main/res/layout/activity_contacts.xml +++ b/app/src/main/res/layout/activity_contacts.xml @@ -4,6 +4,187 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" + android:background="?attr/colorBackground" tools:context=".ContactsActivity"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/cart_list_item.xml b/app/src/main/res/layout/cart_list_item.xml new file mode 100644 index 0000000..95d2bd3 --- /dev/null +++ b/app/src/main/res/layout/cart_list_item.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/dialog_signin.xml b/app/src/main/res/layout/dialog_signin.xml index 77d9ef6..83fd408 100644 --- a/app/src/main/res/layout/dialog_signin.xml +++ b/app/src/main/res/layout/dialog_signin.xml @@ -1,6 +1,83 @@ - - \ No newline at end of file + + + + + + + + + + + + + + +