Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
Y
Your Cashier
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Ahmad Abi Mulya
Your Cashier
Commits
7490e8df
Commit
7490e8df
authored
Aug 26, 2020
by
Wahyu Wibowo
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add fitur cart
parent
9154539c
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
125 additions
and
52 deletions
+125
-52
CartActivity.java
.../com/example/yourcashiertest/activities/CartActivity.java
+49
-7
MainActivity.java
.../com/example/yourcashiertest/activities/MainActivity.java
+13
-13
CartAdapter.java
...ava/com/example/yourcashiertest/adapters/CartAdapter.java
+19
-3
LocalDatabase.java
.../com/example/yourcashiertest/databases/LocalDatabase.java
+17
-22
Cart.java
.../main/java/com/example/yourcashiertest/entities/Cart.java
+16
-1
CartRepository.java
.../example/yourcashiertest/repositories/CartRepository.java
+1
-1
cart_item.xml
app/src/main/res/layout/cart_item.xml
+10
-5
No files found.
app/src/main/java/com/example/yourcashiertest/activities/CartActivity.java
View file @
7490e8df
package
com
.
example
.
yourcashiertest
.
activities
;
package
com
.
example
.
yourcashiertest
.
activities
;
import
androidx.annotation.RequiresApi
;
import
androidx.appcompat.app.AppCompatActivity
;
import
androidx.appcompat.app.AppCompatActivity
;
import
androidx.databinding.DataBindingUtil
;
import
androidx.databinding.DataBindingUtil
;
import
androidx.lifecycle.Observer
;
import
androidx.lifecycle.ViewModelProvider
;
import
androidx.recyclerview.widget.LinearLayoutManager
;
import
android.content.Intent
;
import
android.content.Intent
;
import
android.os.Build
;
import
android.os.Bundle
;
import
android.os.Bundle
;
import
com.example.yourcashiertest.R
;
import
com.example.yourcashiertest.R
;
import
com.example.yourcashiertest.adapters.CartAdapter
;
import
com.example.yourcashiertest.adapters.CartAdapter
;
import
com.example.yourcashiertest.databinding.ActivityCartBinding
;
import
com.example.yourcashiertest.databinding.ActivityCartBinding
;
import
com.example.yourcashiertest.entities.Cart
;
import
com.example.yourcashiertest.viewmodels.CartViewModel
;
import
java.text.DecimalFormat
;
import
java.text.DecimalFormat
;
import
java.text.DecimalFormatSymbols
;
import
java.text.DecimalFormatSymbols
;
import
java.util.List
;
public
class
CartActivity
extends
AppCompatActivity
{
public
class
CartActivity
extends
AppCompatActivity
{
ActivityCartBinding
binding
;
ActivityCartBinding
binding
;
...
@@ -21,14 +30,47 @@ public class CartActivity extends AppCompatActivity {
...
@@ -21,14 +30,47 @@ public class CartActivity extends AppCompatActivity {
super
.
onCreate
(
savedInstanceState
);
super
.
onCreate
(
savedInstanceState
);
binding
=
DataBindingUtil
.
setContentView
(
this
,
R
.
layout
.
activity_cart
);
binding
=
DataBindingUtil
.
setContentView
(
this
,
R
.
layout
.
activity_cart
);
// adapter = new CartAdapter();
adapter
=
new
CartAdapter
();
// binding.rvCartList.setLayoutManager(new LinearLayoutManager(this));
binding
.
rvCartList
.
setLayoutManager
(
new
LinearLayoutManager
(
this
));
// binding.rvCartList.setAdapter(adapter);
binding
.
rvCartList
.
setAdapter
(
adapter
);
CartViewModel
cartViewModel
=
new
ViewModelProvider
(
this
).
get
(
CartViewModel
.
class
);
cartViewModel
.
getCarts
().
observe
(
this
,
carts
->
adapter
.
setCartList
(
carts
));
cartViewModel
.
getCarts
().
observe
(
this
,
new
Observer
<
List
<
Cart
>>()
{
@Override
public
void
onChanged
(
List
<
Cart
>
carts
)
{
int
sum
=
0
;
for
(
int
i
=
0
;
i
<
carts
.
size
();
i
++){
sum
+=
carts
.
get
(
i
).
getPrice
();
}
binding
.
tvTotalPrice
.
setText
(
String
.
valueOf
(
sum
));
}
});
adapter
.
setCartListener
(
new
CartAdapter
.
CartListener
()
{
@RequiresApi
(
api
=
Build
.
VERSION_CODES
.
N
)
@Override
public
void
onIncrease
(
Cart
cart
)
{
cart
.
setQty
(
cart
.
getQty
()
+
1
);
cart
.
setPrice
(
Math
.
multiplyExact
(
cart
.
getRealPrice
(),
cart
.
getQty
()));
cartViewModel
.
updateCart
(
cart
);
}
@RequiresApi
(
api
=
Build
.
VERSION_CODES
.
N
)
@Override
public
void
onDecrease
(
Cart
cart
)
{
cart
.
setQty
(
cart
.
getQty
()
-
1
);
if
(
cart
.
getQty
()
==
0
){
cartViewModel
.
deleteCart
(
cart
);
}
else
{
cart
.
setPrice
(
Math
.
multiplyExact
(
cart
.
getRealPrice
(),
cart
.
getQty
()));
cartViewModel
.
updateCart
(
cart
);
}
}
});
// CartViewModel cartViewModel = new ViewModelProvider(this).get(CartViewModel.class);
binding
.
setViewModelCart
(
cartViewModel
);
// cartViewModel.getCarts().observe(this, carts -> adapter.setCartList(carts));
//
// binding.setViewModelCart(cartViewModel);
binding
.
ivBtnBack
.
setOnClickListener
(
view
->
startActivity
(
new
Intent
(
CartActivity
.
this
,
MainActivity
.
class
)));
binding
.
ivBtnBack
.
setOnClickListener
(
view
->
startActivity
(
new
Intent
(
CartActivity
.
this
,
MainActivity
.
class
)));
binding
.
btnCheckout
.
setOnClickListener
(
view
->
{
binding
.
btnCheckout
.
setOnClickListener
(
view
->
{
...
...
app/src/main/java/com/example/yourcashiertest/activities/MainActivity.java
View file @
7490e8df
...
@@ -15,10 +15,12 @@ import android.text.TextWatcher;
...
@@ -15,10 +15,12 @@ import android.text.TextWatcher;
import
android.view.Menu
;
import
android.view.Menu
;
import
android.view.View
;
import
android.view.View
;
import
android.widget.PopupMenu
;
import
android.widget.PopupMenu
;
import
android.widget.Toast
;
import
com.example.yourcashiertest.R
;
import
com.example.yourcashiertest.R
;
import
com.example.yourcashiertest.adapters.ProductAdapter
;
import
com.example.yourcashiertest.adapters.ProductAdapter
;
import
com.example.yourcashiertest.databinding.ActivityMainBinding
;
import
com.example.yourcashiertest.databinding.ActivityMainBinding
;
import
com.example.yourcashiertest.entities.Cart
;
import
com.example.yourcashiertest.entities.Product
;
import
com.example.yourcashiertest.entities.Product
;
import
com.example.yourcashiertest.models.CartModel
;
import
com.example.yourcashiertest.models.CartModel
;
import
com.example.yourcashiertest.viewmodels.CartViewModel
;
import
com.example.yourcashiertest.viewmodels.CartViewModel
;
...
@@ -49,8 +51,11 @@ public class MainActivity extends AppCompatActivity {
...
@@ -49,8 +51,11 @@ public class MainActivity extends AppCompatActivity {
ProductAdapter
adapter
=
new
ProductAdapter
();
ProductAdapter
adapter
=
new
ProductAdapter
();
binding
=
DataBindingUtil
.
setContentView
(
this
,
R
.
layout
.
activity_main
);
binding
=
DataBindingUtil
.
setContentView
(
this
,
R
.
layout
.
activity_main
);
// cartViewModel = new ViewModelProvider(this).get(CartViewModel.class);
cartViewModel
=
new
ViewModelProvider
(
this
).
get
(
CartViewModel
.
class
);
cartViewModel
.
getCarts
().
observe
(
this
,
carts
->
{
if
(
carts
.
size
()
!=
0
)
binding
.
tvCount
.
setText
(
String
.
valueOf
(
carts
.
size
()));
else
binding
.
tvCount
.
setText
(
String
.
valueOf
(
0
));
});
String
name
=
getIntent
().
getStringExtra
(
LoginActivity
.
DATA_LOGIN
);
String
name
=
getIntent
().
getStringExtra
(
LoginActivity
.
DATA_LOGIN
);
binding
.
tvUser
.
setText
(
name
);
binding
.
tvUser
.
setText
(
name
);
// settings menu
// settings menu
...
@@ -129,20 +134,15 @@ public class MainActivity extends AppCompatActivity {
...
@@ -129,20 +134,15 @@ public class MainActivity extends AppCompatActivity {
public
void
addToCart
(
Product
product
){
public
void
addToCart
(
Product
product
){
// Cart cart = new Cart(0,"", "", 0, 0);
Cart
cart
=
new
Cart
(
0
,
""
,
""
,
0
,
0
,
0
);
// cart.setIdProduct(product.getId());
// cart.setImage(product.getPhoto());
// cart.setNameProduct(product.getName());
// cart.setPrice(product.getPrice());
// cart.setQty(1);
// cartViewModel.insertCart(cart);
List
<
CartModel
>
list
=
new
ArrayList
<>();
CartModel
cart
=
new
CartModel
();
cart
.
setIdProduct
(
product
.
getId
());
cart
.
setIdProduct
(
product
.
getId
());
cart
.
setNameProduct
(
product
.
getName
());
cart
.
setImage
(
product
.
getPhoto
());
cart
.
setImage
(
product
.
getPhoto
());
cart
.
setNameProduct
(
product
.
getName
());
cart
.
setPrice
(
product
.
getPrice
());
cart
.
setPrice
(
product
.
getPrice
());
cart
.
setQty
(
product
.
getQuantity
());
cart
.
setQty
(
1
);
cart
.
setRealPrice
(
product
.
getPrice
());
cartViewModel
.
insertCart
(
cart
);
Toast
.
makeText
(
MainActivity
.
this
,
"Data berhasil ditambahkan ke keranjang"
,
Toast
.
LENGTH_LONG
).
show
();
}
}
...
...
app/src/main/java/com/example/yourcashiertest/adapters/CartAdapter.java
View file @
7490e8df
...
@@ -14,6 +14,8 @@ import com.example.yourcashiertest.entities.Cart;
...
@@ -14,6 +14,8 @@ import com.example.yourcashiertest.entities.Cart;
import
com.example.yourcashiertest.entities.Product
;
import
com.example.yourcashiertest.entities.Product
;
import
com.example.yourcashiertest.models.CartModel
;
import
com.example.yourcashiertest.models.CartModel
;
import
java.text.DecimalFormat
;
import
java.text.DecimalFormatSymbols
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
...
@@ -22,8 +24,8 @@ public class CartAdapter extends RecyclerView.Adapter<CartAdapter.ViewHolder> {
...
@@ -22,8 +24,8 @@ public class CartAdapter extends RecyclerView.Adapter<CartAdapter.ViewHolder> {
private
List
<
Cart
>
carts
=
new
ArrayList
<>();
private
List
<
Cart
>
carts
=
new
ArrayList
<>();
public
interface
CartListener
{
public
interface
CartListener
{
void
onIncrease
();
void
onIncrease
(
Cart
cart
);
void
onDecrease
();
void
onDecrease
(
Cart
cart
);
}
}
private
CartListener
listener
;
private
CartListener
listener
;
...
@@ -56,7 +58,8 @@ public class CartAdapter extends RecyclerView.Adapter<CartAdapter.ViewHolder> {
...
@@ -56,7 +58,8 @@ public class CartAdapter extends RecyclerView.Adapter<CartAdapter.ViewHolder> {
@Override
@Override
public
int
getItemCount
()
{
public
int
getItemCount
()
{
return
carts
.
size
();
if
(
carts
.
size
()
!=
0
)
return
carts
.
size
();
else
return
0
;
}
}
public
class
ViewHolder
extends
RecyclerView
.
ViewHolder
{
public
class
ViewHolder
extends
RecyclerView
.
ViewHolder
{
...
@@ -72,6 +75,19 @@ public class CartAdapter extends RecyclerView.Adapter<CartAdapter.ViewHolder> {
...
@@ -72,6 +75,19 @@ public class CartAdapter extends RecyclerView.Adapter<CartAdapter.ViewHolder> {
public
void
bindData
(
Cart
cart
,
CartListener
listener
)
{
public
void
bindData
(
Cart
cart
,
CartListener
listener
)
{
cartItemBinding
.
setCartProduct
(
cart
);
cartItemBinding
.
setCartProduct
(
cart
);
DecimalFormat
rupiah
=
(
DecimalFormat
)
DecimalFormat
.
getCurrencyInstance
();
DecimalFormatSymbols
format
=
new
DecimalFormatSymbols
();
format
.
setCurrencySymbol
(
"Rp. "
);
format
.
setMonetaryDecimalSeparator
(
','
);
format
.
setGroupingSeparator
(
'.'
);
rupiah
.
setDecimalFormatSymbols
(
format
);
cartItemBinding
.
setPrice
(
rupiah
.
format
(
cart
.
getPrice
()));
cartItemBinding
.
btnAdd
.
setOnClickListener
(
view
->
listener
.
onIncrease
(
cart
));
cartItemBinding
.
btnMin
.
setOnClickListener
(
view
->
listener
.
onDecrease
(
cart
));
}
}
}
}
}
}
app/src/main/java/com/example/yourcashiertest/databases/LocalDatabase.java
View file @
7490e8df
...
@@ -20,11 +20,11 @@ import com.example.yourcashiertest.entities.Product;
...
@@ -20,11 +20,11 @@ import com.example.yourcashiertest.entities.Product;
import
java.util.concurrent.ExecutorService
;
import
java.util.concurrent.ExecutorService
;
import
java.util.concurrent.Executors
;
import
java.util.concurrent.Executors
;
@Database
(
entities
=
{
Product
.
class
},
version
=
1
,
exportSchema
=
false
)
@Database
(
entities
=
{
Product
.
class
,
Cart
.
class
},
version
=
3
,
exportSchema
=
false
)
public
abstract
class
LocalDatabase
extends
RoomDatabase
{
public
abstract
class
LocalDatabase
extends
RoomDatabase
{
public
abstract
ProductDao
productDao
();
public
abstract
ProductDao
productDao
();
//
public abstract CartDao cartDao();
public
abstract
CartDao
cartDao
();
private
static
volatile
LocalDatabase
INSTANCE
;
private
static
volatile
LocalDatabase
INSTANCE
;
private
static
final
int
NUMBER_OF_THREADS
=
4
;
private
static
final
int
NUMBER_OF_THREADS
=
4
;
...
@@ -32,26 +32,20 @@ public abstract class LocalDatabase extends RoomDatabase {
...
@@ -32,26 +32,20 @@ public abstract class LocalDatabase extends RoomDatabase {
public
static
final
ExecutorService
databaseWriteExecutor
=
public
static
final
ExecutorService
databaseWriteExecutor
=
Executors
.
newFixedThreadPool
(
NUMBER_OF_THREADS
);
Executors
.
newFixedThreadPool
(
NUMBER_OF_THREADS
);
// public static final Migration MIGRATION_1_2 = new Migration(1,2) {
public
static
final
Migration
MIGRATION_1_2
=
new
Migration
(
1
,
2
)
{
// @Override
@Override
// public void migrate(@NonNull SupportSQLiteDatabase database) {
public
void
migrate
(
@NonNull
SupportSQLiteDatabase
database
)
{
// database.execSQL("CREATE TABLE IF NOT EXISTS Cart (id INTEGER, idProduct INTEGER,price INTEGER, qty INTEGER,nameProduct TEXT, image TEXT)");
database
.
execSQL
(
"CREATE TABLE IF NOT EXISTS Cart (id INTEGER NOT NULL, idProduct INTEGER NOT NULL,"
+
// }
"price INTEGER NOT NULL, qty INTEGER NOT NULL, nameProduct TEXT NOT NULL, image TEXT NOT NULL, PRIMARY KEY(id))"
);
// };
}
//
};
// public static final Migration MIGRATION_1_3 = new Migration(1,3) {
// @Override
public
static
final
Migration
MIGRATION_2_3
=
new
Migration
(
2
,
3
)
{
// public void migrate(@NonNull SupportSQLiteDatabase database) {
@Override
// database.execSQL("DROP TABLE Cart");
public
void
migrate
(
@NonNull
SupportSQLiteDatabase
database
)
{
// }
database
.
execSQL
(
"ALTER TABLE Cart ADD COLUMN realPrice INTEGER NOT NULL DEFAULT 0"
);
// };
}
//
};
// public static final Migration MIGRATION_1_4 = new Migration(1,4) {
// @Override
// public void migrate(@NonNull SupportSQLiteDatabase database) {
// database.execSQL("CREATE TABLE IF NOT EXISTS Cart (id INTEGER, idProduct INTEGER,price INTEGER, qty INTEGER,nameProduct TEXT, image TEXT)");
// }
// };
public
static
LocalDatabase
getDatabase
(
Context
context
)
{
public
static
LocalDatabase
getDatabase
(
Context
context
)
{
if
(
INSTANCE
==
null
)
{
if
(
INSTANCE
==
null
)
{
...
@@ -59,6 +53,7 @@ public abstract class LocalDatabase extends RoomDatabase {
...
@@ -59,6 +53,7 @@ public abstract class LocalDatabase extends RoomDatabase {
if
(
INSTANCE
==
null
)
{
if
(
INSTANCE
==
null
)
{
INSTANCE
=
Room
.
databaseBuilder
(
context
.
getApplicationContext
(),
INSTANCE
=
Room
.
databaseBuilder
(
context
.
getApplicationContext
(),
LocalDatabase
.
class
,
"yourcashier_database"
)
LocalDatabase
.
class
,
"yourcashier_database"
)
.
addMigrations
(
MIGRATION_1_2
,
MIGRATION_2_3
)
.
build
();
.
build
();
}
}
}
}
...
...
app/src/main/java/com/example/yourcashiertest/entities/Cart.java
View file @
7490e8df
...
@@ -35,6 +35,10 @@ public class Cart implements Parcelable {
...
@@ -35,6 +35,10 @@ public class Cart implements Parcelable {
@ColumnInfo
(
name
=
"image"
)
@ColumnInfo
(
name
=
"image"
)
String
image
;
String
image
;
@NonNull
@ColumnInfo
(
name
=
"realPrice"
)
long
realPrice
=
0
;
protected
Cart
(
Parcel
in
)
{
protected
Cart
(
Parcel
in
)
{
id
=
in
.
readLong
();
id
=
in
.
readLong
();
idProduct
=
in
.
readLong
();
idProduct
=
in
.
readLong
();
...
@@ -42,6 +46,7 @@ public class Cart implements Parcelable {
...
@@ -42,6 +46,7 @@ public class Cart implements Parcelable {
image
=
in
.
readString
();
image
=
in
.
readString
();
price
=
in
.
readLong
();
price
=
in
.
readLong
();
qty
=
in
.
readLong
();
qty
=
in
.
readLong
();
price
=
in
.
readLong
();
}
}
public
static
final
Creator
<
Cart
>
CREATOR
=
new
Creator
<
Cart
>()
{
public
static
final
Creator
<
Cart
>
CREATOR
=
new
Creator
<
Cart
>()
{
...
@@ -56,12 +61,13 @@ public class Cart implements Parcelable {
...
@@ -56,12 +61,13 @@ public class Cart implements Parcelable {
}
}
};
};
public
Cart
(
long
idProduct
,
String
nameProduct
,
String
image
,
long
price
,
long
qty
){
public
Cart
(
long
idProduct
,
String
nameProduct
,
String
image
,
long
price
,
long
qty
,
long
realPrice
){
this
.
idProduct
=
idProduct
;
this
.
idProduct
=
idProduct
;
this
.
nameProduct
=
nameProduct
;
this
.
nameProduct
=
nameProduct
;
this
.
image
=
image
;
this
.
image
=
image
;
this
.
price
=
price
;
this
.
price
=
price
;
this
.
qty
=
qty
;
this
.
qty
=
qty
;
this
.
realPrice
=
realPrice
;
}
}
public
long
getId
()
{
public
long
getId
()
{
...
@@ -112,6 +118,14 @@ public class Cart implements Parcelable {
...
@@ -112,6 +118,14 @@ public class Cart implements Parcelable {
this
.
qty
=
qty
;
this
.
qty
=
qty
;
}
}
public
Long
getRealPrice
()
{
return
realPrice
;
}
public
void
setRealPrice
(
Long
realPrice
)
{
this
.
realPrice
=
realPrice
;
}
@Override
@Override
public
int
describeContents
()
{
public
int
describeContents
()
{
return
0
;
return
0
;
...
@@ -125,5 +139,6 @@ public class Cart implements Parcelable {
...
@@ -125,5 +139,6 @@ public class Cart implements Parcelable {
dest
.
writeString
(
image
);
dest
.
writeString
(
image
);
dest
.
writeLong
(
price
);
dest
.
writeLong
(
price
);
dest
.
writeLong
(
qty
);
dest
.
writeLong
(
qty
);
dest
.
writeLong
(
realPrice
);
}
}
}
}
app/src/main/java/com/example/yourcashiertest/repositories/CartRepository.java
View file @
7490e8df
...
@@ -16,7 +16,7 @@ public class CartRepository {
...
@@ -16,7 +16,7 @@ public class CartRepository {
public
CartRepository
(
Application
application
){
public
CartRepository
(
Application
application
){
LocalDatabase
db
=
LocalDatabase
.
getDatabase
(
application
);
LocalDatabase
db
=
LocalDatabase
.
getDatabase
(
application
);
//
cartDao = db.cartDao();
cartDao
=
db
.
cartDao
();
carts
=
cartDao
.
getCarts
();
carts
=
cartDao
.
getCarts
();
}
}
...
...
app/src/main/res/layout/cart_item.xml
View file @
7490e8df
...
@@ -7,14 +7,19 @@
...
@@ -7,14 +7,19 @@
<variable
<variable
name=
"cartProduct"
name=
"cartProduct"
type=
"com.example.yourcashiertest.entities.Cart"
/>
type=
"com.example.yourcashiertest.entities.Cart"
/>
<variable
<variable
name=
"qty"
name=
"qty"
type=
"String"
/>
type=
"String"
/>
<variable
name=
"price"
type=
"String"
/>
</data>
</data>
<com.google.android.material.card.MaterialCardView
<com.google.android.material.card.MaterialCardView
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"
match_par
ent"
>
android:layout_height=
"
wrap_cont
ent"
>
<androidx.constraintlayout.widget.ConstraintLayout
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
...
@@ -27,6 +32,7 @@
...
@@ -27,6 +32,7 @@
android:id=
"@+id/imageView"
android:id=
"@+id/imageView"
android:layout_width=
"107dp"
android:layout_width=
"107dp"
android:layout_height=
"110dp"
android:layout_height=
"110dp"
app:file=
"@{cartProduct.image}"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintHorizontal_bias=
"0.003"
app:layout_constraintHorizontal_bias=
"0.003"
...
@@ -42,7 +48,7 @@
...
@@ -42,7 +48,7 @@
android:layout_alignParentLeft=
"true"
android:layout_alignParentLeft=
"true"
android:layout_alignParentTop=
"true"
android:layout_alignParentTop=
"true"
android:gravity=
"top"
android:gravity=
"top"
android:text=
"@
string/burger_medi
"
android:text=
"@
{cartProduct.nameProduct}
"
android:textAppearance=
"@style/burger_medi"
android:textAppearance=
"@style/burger_medi"
app:layout_constraintBottom_toBottomOf=
"@+id/imageView"
app:layout_constraintBottom_toBottomOf=
"@+id/imageView"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
...
@@ -59,7 +65,7 @@
...
@@ -59,7 +65,7 @@
android:layout_alignParentTop=
"true"
android:layout_alignParentTop=
"true"
android:gravity=
"top"
android:gravity=
"top"
android:text=
""
android:text=
""
tools:text=
"
$6000
"
tools:text=
"
@{price}
"
android:textAppearance=
"@style/some_id"
android:textAppearance=
"@style/some_id"
app:layout_constraintBottom_toBottomOf=
"@+id/imageView"
app:layout_constraintBottom_toBottomOf=
"@+id/imageView"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
...
@@ -109,8 +115,7 @@
...
@@ -109,8 +115,7 @@
android:id=
"@+id/tv_qty"
android:id=
"@+id/tv_qty"
android:layout_width=
"10dp"
android:layout_width=
"10dp"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"@{qty}"
android:text=
"@{cartProduct.qty + ``}"
tools:text=
"4"
app:layout_constraintBottom_toBottomOf=
"@+id/v_add"
app:layout_constraintBottom_toBottomOf=
"@+id/v_add"
app:layout_constraintEnd_toStartOf=
"@+id/btn_add"
app:layout_constraintEnd_toStartOf=
"@+id/btn_add"
app:layout_constraintStart_toEndOf=
"@+id/btn_min"
app:layout_constraintStart_toEndOf=
"@+id/btn_min"
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment