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 0000000..677fe16 Binary files /dev/null and b/app/src/main/res/drawable/ic_cart_item.png differ 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 + + + + + + + + + + + + + + +