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
92911f53
Commit
92911f53
authored
Sep 02, 2020
by
Ahmad Abi Mulya
Browse files
Options
Browse Files
Download
Plain Diff
fix conflicts
parents
57c631b0
c90ed98c
Show whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
125 additions
and
42 deletions
+125
-42
CartActivity.java
.../com/example/yourcashiertest/activities/CartActivity.java
+10
-8
LoginActivity.java
...com/example/yourcashiertest/activities/LoginActivity.java
+3
-0
MainActivity.java
.../com/example/yourcashiertest/activities/MainActivity.java
+8
-1
OrderActivity.java
...com/example/yourcashiertest/activities/OrderActivity.java
+16
-11
PaymentActivity.java
...m/example/yourcashiertest/activities/PaymentActivity.java
+24
-10
RegisterActivity.java
.../example/yourcashiertest/activities/RegisterActivity.java
+2
-1
StatusPayment.java
...com/example/yourcashiertest/activities/StatusPayment.java
+2
-0
OrderAdapter.java
...va/com/example/yourcashiertest/adapters/OrderAdapter.java
+4
-0
ProductDao.java
...ain/java/com/example/yourcashiertest/daos/ProductDao.java
+2
-2
TransaksiDao.java
...n/java/com/example/yourcashiertest/daos/TransaksiDao.java
+1
-1
DBHelper.java
.../java/com/example/yourcashiertest/databases/DBHelper.java
+6
-0
User.java
...rc/main/java/com/example/yourcashiertest/models/User.java
+23
-0
TransaksiViewModel.java
...xample/yourcashiertest/viewmodels/TransaksiViewModel.java
+1
-0
UserViewModel.java
...com/example/yourcashiertest/viewmodels/UserViewModel.java
+4
-2
activity_cart.xml
app/src/main/res/layout/activity_cart.xml
+2
-1
item_order.xml
app/src/main/res/layout/item_order.xml
+17
-5
No files found.
app/src/main/java/com/example/yourcashiertest/activities/CartActivity.java
View file @
92911f53
...
...
@@ -30,6 +30,7 @@ public class CartActivity extends AppCompatActivity {
public
static
String
PRICE
=
"price"
;
Product
product
;
TransaksiViewModel
transaksiViewModel
;
CartViewModel
cartViewModel
;
@SuppressLint
(
"SetTextI18n"
)
@Override
...
...
@@ -45,7 +46,7 @@ public class CartActivity extends AppCompatActivity {
transaksiViewModel
=
new
ViewModelProvider
(
this
).
get
(
TransaksiViewModel
.
class
);
CartViewModel
cartViewModel
=
new
ViewModelProvider
(
this
).
get
(
CartViewModel
.
class
);
cartViewModel
=
new
ViewModelProvider
(
this
).
get
(
CartViewModel
.
class
);
cartViewModel
.
getCarts
().
observe
(
this
,
carts
->
adapter
.
setCartList
(
carts
));
cartViewModel
.
getCarts
().
observe
(
this
,
carts
->
{
...
...
@@ -54,7 +55,10 @@ public class CartActivity extends AppCompatActivity {
for
(
int
i
=
0
;
i
<
carts
.
size
();
i
++){
count
+=
carts
.
get
(
i
).
getPrice
();
}
}
else
binding
.
btnCheckout
.
setEnabled
(
false
);
}
else
{
binding
.
btnCheckout
.
setEnabled
(
false
);
binding
.
saveOrder
.
setEnabled
(
false
);
}
SUM
=
count
;
binding
.
tvTotalPrice
.
setText
(
Convert
.
changeToCurrency
(
SUM
));
binding
.
items
.
setText
(
carts
.
size
()
+
" items"
);
...
...
@@ -94,12 +98,7 @@ public class CartActivity extends AppCompatActivity {
startActivity
(
new
Intent
(
CartActivity
.
this
,
PaymentActivity
.
class
).
putExtra
(
PRICE
,
SUM
));
finish
();
});
binding
.
saveOrder
.
setOnClickListener
(
new
View
.
OnClickListener
()
{
@Override
public
void
onClick
(
View
view
)
{
saveTransaction
(
SUM
);
}
});
binding
.
saveOrder
.
setOnClickListener
(
view
->
saveTransaction
(
SUM
));
}
private
void
saveTransaction
(
int
amount
)
{
...
...
@@ -107,6 +106,9 @@ public class CartActivity extends AppCompatActivity {
transaksi
.
setAmount
(
amount
);
transaksi
.
setStatus
(
"Pending"
);
transaksiViewModel
.
insertTransaksi
(
transaksi
);
cartViewModel
.
clear
();
startActivity
(
new
Intent
(
CartActivity
.
this
,
OrderActivity
.
class
));
Toast
.
makeText
(
getApplicationContext
(),
"Please Continue Payment"
,
Toast
.
LENGTH_LONG
).
show
();
}
@Override
...
...
app/src/main/java/com/example/yourcashiertest/activities/LoginActivity.java
View file @
92911f53
...
...
@@ -76,6 +76,9 @@ public class LoginActivity extends AppCompatActivity {
.
addFlags
(
Intent
.
FLAG_ACTIVITY_CLEAR_TASK
).
addFlags
(
Intent
.
FLAG_ACTIVITY_CLEAR_TOP
));
prefManager
.
setDataUser
(
response
.
body
().
getData
().
getFullName
());
finish
();
}
else
if
(
response
.
code
()
==
302
){
Toast
.
makeText
(
getApplicationContext
(),
"Please verify your account!"
,
Toast
.
LENGTH_LONG
).
show
();
binding
.
setLoading
(
false
);
}
else
{
Toast
.
makeText
(
getApplicationContext
(),
response
.
body
().
getMessages
(),
Toast
.
LENGTH_LONG
).
show
();
binding
.
setLoading
(
false
);
...
...
app/src/main/java/com/example/yourcashiertest/activities/MainActivity.java
View file @
92911f53
...
...
@@ -20,6 +20,7 @@ import android.text.Editable;
import
android.text.TextWatcher
;
import
android.view.View
;
import
android.util.Log
;
import
android.widget.PopupMenu
;
import
android.widget.Toast
;
...
...
@@ -30,6 +31,7 @@ import com.example.yourcashiertest.databases.DBHelper;
import
com.example.yourcashiertest.databinding.ActivityMainBinding
;
import
com.example.yourcashiertest.entities.Cart
;
import
com.example.yourcashiertest.entities.Product
;
import
com.example.yourcashiertest.entities.Transaksi
;
import
com.example.yourcashiertest.viewmodels.CartViewModel
;
import
com.example.yourcashiertest.viewmodels.ProductViewModel
;
...
...
@@ -104,7 +106,6 @@ public class MainActivity extends AppCompatActivity {
return
true
;
case
R
.
id
.
item_three
:
startActivity
(
new
Intent
(
MainActivity
.
this
,
OrderActivity
.
class
));
finish
();
break
;
case
R
.
id
.
item_four
:
prefManager
.
removeLoginSession
();
...
...
@@ -175,6 +176,12 @@ public class MainActivity extends AppCompatActivity {
}
});
binding
.
setViewModel
(
viewModel
);
// just checking data
List
<
Transaksi
>
list
=
DBHelper
.
getAllTransaksi
(
getApplicationContext
());
for
(
int
i
=
0
;
i
<
list
.
size
();
i
++){
Log
.
d
(
"transaction"
,
String
.
valueOf
(
list
.
get
(
i
).
getStatus
()));
}
}
...
...
app/src/main/java/com/example/yourcashiertest/activities/OrderActivity.java
View file @
92911f53
...
...
@@ -6,10 +6,12 @@ import androidx.lifecycle.Observer;
import
androidx.lifecycle.ViewModelProvider
;
import
androidx.recyclerview.widget.LinearLayoutManager
;
import
android.content.Intent
;
import
android.os.Bundle
;
import
com.example.yourcashiertest.R
;
import
com.example.yourcashiertest.adapters.OrderAdapter
;
import
com.example.yourcashiertest.databases.DBHelper
;
import
com.example.yourcashiertest.databinding.ActivityOrderBinding
;
import
com.example.yourcashiertest.entities.Transaksi
;
import
com.example.yourcashiertest.viewmodels.TransaksiViewModel
;
...
...
@@ -27,21 +29,24 @@ public class OrderActivity extends AppCompatActivity {
super
.
onCreate
(
savedInstanceState
);
binding
=
DataBindingUtil
.
setContentView
(
this
,
R
.
layout
.
activity_order
);
adapter
=
new
OrderAdapter
();
viewModel
=
new
ViewModelProvider
(
this
).
get
(
TransaksiViewModel
.
class
);
binding
.
rvListOrder
.
setLayoutManager
(
new
LinearLayoutManager
(
this
));
binding
.
rvListOrder
.
setAdapter
(
adapter
);
viewModel
.
getList
().
observe
(
this
,
transaksi
->
adapter
.
setTransaksiList
(
transaksi
));
// adapter.setListener(new OrderAdapter.TransaksiListener() {
// @Override
// public void onCancel(Transaksi transaksi) {
//
// }
//
// @Override
// public void onContinue(Transaksi transaksi) {
//
// }
// });
adapter
.
setListener
(
new
OrderAdapter
.
TransaksiListener
()
{
@Override
public
void
onCancel
(
Transaksi
transaksi
)
{
viewModel
.
deleteTransaksi
(
transaksi
);
}
@Override
public
void
onContinue
(
Transaksi
transaksi
)
{
startActivity
(
new
Intent
(
OrderActivity
.
this
,
PaymentActivity
.
class
)
.
putExtra
(
PaymentActivity
.
DATA_PENDING
,
transaksi
));
}
});
}
}
\ No newline at end of file
app/src/main/java/com/example/yourcashiertest/activities/PaymentActivity.java
View file @
92911f53
...
...
@@ -13,6 +13,8 @@ import android.os.Bundle;
import
android.text.TextUtils
;
import
android.util.Log
;
import
android.view.View
;
import
android.widget.Toast
;
import
com.example.yourcashiertest.R
;
import
com.example.yourcashiertest.adapters.PaymentAdapter
;
import
com.example.yourcashiertest.databases.DBHelper
;
...
...
@@ -42,6 +44,8 @@ public class PaymentActivity extends AppCompatActivity {
TransaksiViewModel
payViewModel
;
public
static
final
String
PAY_WITH
=
"pay_with"
;
private
ArrayList
<
ResponsePayment
>
responsePayments
=
new
ArrayList
<>();
static
final
String
DATA_PENDING
=
"data_pending"
;
Transaksi
data_pending
;
@SuppressLint
(
"ResourceAsColor"
)
@RequiresApi
(
api
=
Build
.
VERSION_CODES
.
N
)
...
...
@@ -54,7 +58,6 @@ public class PaymentActivity extends AppCompatActivity {
cartViewModel
=
new
ViewModelProvider
(
this
).
get
(
CartViewModel
.
class
);
viewModel
=
new
ViewModelProvider
(
this
).
get
(
ProductViewModel
.
class
);
amount
=
getIntent
().
getIntExtra
(
CartActivity
.
PRICE
,
0
);
binding
.
setAmount
(
Convert
.
changeToCurrency
(
amount
));
responsePayments
.
add
(
new
ResponsePayment
(
"https://i.ibb.co/yfcFMHc/undraw-wallet-aym5.png"
,
"Cash"
));
responsePayments
.
add
(
new
ResponsePayment
(
"https://i.ibb.co/qNnKh5n/undraw-Credit-card-re-blml.png"
,
"Card"
));
...
...
@@ -65,6 +68,12 @@ public class PaymentActivity extends AppCompatActivity {
paymentMethod
=
responsePayments
.
getBank
();
binding
.
btnPay
.
setEnabled
(
true
);
});
data_pending
=
getIntent
().
getParcelableExtra
(
DATA_PENDING
);
if
(
data_pending
!=
null
){
amount
=
(
int
)
data_pending
.
getAmount
();
}
binding
.
setAmount
(
Convert
.
changeToCurrency
(
amount
));
}
public
void
btnPay
(
View
view
)
{
...
...
@@ -78,8 +87,13 @@ public class PaymentActivity extends AppCompatActivity {
ViewUtil
.
showMessage
(
view
,
"AmountPaid doesn't less than total price"
);
}
else
{
refund
=
amountPaid
-
amount
;
if
(
data_pending
!=
null
)
continueTransaksi
(
data_pending
);
else
createTransaksi
(
amount
);
updateDataProduct
();
startActivity
(
new
Intent
(
PaymentActivity
.
this
,
StatusPayment
.
class
).
putExtra
(
REFUND
,
refund
).
putExtra
(
PAY_WITH
,
paymentMethod
));
startActivity
(
new
Intent
(
PaymentActivity
.
this
,
StatusPayment
.
class
)
.
putExtra
(
REFUND
,
refund
).
putExtra
(
PAY_WITH
,
paymentMethod
));
cartViewModel
.
clear
();
finish
();
}
...
...
@@ -90,14 +104,6 @@ public class PaymentActivity extends AppCompatActivity {
List
<
Product
>
products
=
DBHelper
.
getAllProduct
(
getApplicationContext
());
List
<
Cart
>
carts
=
DBHelper
.
getAllCart
(
getApplicationContext
());
// just checking data
List
<
Transaksi
>
list
=
DBHelper
.
getAllTransaksi
(
getApplicationContext
());
for
(
int
i
=
0
;
i
<
list
.
size
();
i
++){
Log
.
d
(
"transaction"
,
String
.
valueOf
(
list
.
get
(
i
).
getOrderId
()));
}
createTransaksi
(
amount
);
for
(
int
c
=
0
;
c
<
carts
.
size
();
c
++){
for
(
int
p
=
0
;
p
<
products
.
size
();
p
++){
if
(
carts
.
get
(
c
).
getIdProduct
()
==
products
.
get
(
p
).
getId
()){
...
...
@@ -111,6 +117,14 @@ public class PaymentActivity extends AppCompatActivity {
}
}
private
void
continueTransaksi
(
Transaksi
transaksi
){
Log
.
d
(
"status transaksi"
,
transaksi
.
getStatus
());
if
(
transaksi
.
getStatus
().
equals
(
"Pending"
)){
transaksi
.
setStatus
(
"Success"
);
payViewModel
.
updateTransaksi
(
transaksi
);
}
}
private
void
createTransaksi
(
int
amount
)
{
Transaksi
transaksi
=
new
Transaksi
(
0
,
""
);
transaksi
.
setAmount
(
amount
);
...
...
app/src/main/java/com/example/yourcashiertest/activities/RegisterActivity.java
View file @
92911f53
...
...
@@ -46,7 +46,8 @@ public class RegisterActivity extends AppCompatActivity {
user
.
setPassword
(
binding
.
etPassword
.
getText
().
toString
());
user
.
setPhoneNumber
(
binding
.
etPhoneNumber
.
getText
().
toString
());
viewModel
.
registrasi
(
user
);
Toast
.
makeText
(
getApplicationContext
(),
"Register Was Successful"
,
Toast
.
LENGTH_LONG
).
show
();
Toast
.
makeText
(
getApplicationContext
(),
viewModel
.
getMessages
(),
Toast
.
LENGTH_LONG
).
show
();
startActivity
(
new
Intent
(
getApplicationContext
(),
LoginActivity
.
class
));
finish
();
}
...
...
app/src/main/java/com/example/yourcashiertest/activities/StatusPayment.java
View file @
92911f53
...
...
@@ -7,6 +7,7 @@ import android.content.Intent;
import
android.os.Bundle
;
import
android.util.Log
;
import
android.view.View
;
import
android.widget.Toast
;
import
com.example.yourcashiertest.R
;
import
com.example.yourcashiertest.databinding.ActivityStatusPaymentBinding
;
...
...
@@ -31,6 +32,7 @@ public class StatusPayment extends AppCompatActivity {
public
void
btnFinish
(
View
view
)
{
startActivity
(
new
Intent
(
StatusPayment
.
this
,
MainActivity
.
class
));
Toast
.
makeText
(
getApplicationContext
(),
"Payment Success"
,
Toast
.
LENGTH_LONG
).
show
();
finish
();
}
...
...
app/src/main/java/com/example/yourcashiertest/adapters/OrderAdapter.java
View file @
92911f53
...
...
@@ -72,6 +72,10 @@ public class OrderAdapter extends RecyclerView.Adapter<OrderAdapter.ViewHolder>
public
void
bindData
(
Transaksi
transaksi
,
TransaksiListener
listener
){
binding
.
setTransaction
(
transaksi
);
binding
.
setAmount
(
Convert
.
changeToCurrency
(
transaksi
.
getAmount
()));
if
(
transaksi
.
getStatus
().
equals
(
"Success"
)){
binding
.
setVisibility
(
false
);
}
else
binding
.
setVisibility
(
true
);
binding
.
btnCancel
.
setOnClickListener
(
view
->
listener
.
onCancel
(
transaksi
));
binding
.
btnContinue
.
setOnClickListener
(
view
->
listener
.
onContinue
(
transaksi
));
}
...
...
app/src/main/java/com/example/yourcashiertest/daos/ProductDao.java
View file @
92911f53
...
...
@@ -20,8 +20,8 @@ public interface ProductDao {
@Query
(
"SELECT * FROM products"
)
public
List
<
Product
>
getAll
();
// @Query("SELECT category FROM products
")
// public List<Product> getAllCategory(
);
@Query
(
"SELECT * FROM products WHERE id =:id
"
)
public
Product
getProductById
(
int
id
);
@Query
(
"SELECT * FROM products WHERE name LIKE :query OR category LIKE:query ORDER BY id DESC"
)
public
LiveData
<
List
<
Product
>>
getFilteredProducts
(
String
query
);
...
...
app/src/main/java/com/example/yourcashiertest/daos/TransaksiDao.java
View file @
92911f53
...
...
@@ -18,7 +18,7 @@ public interface TransaksiDao {
@Query
(
"SELECT * FROM Transaksi"
)
List
<
Transaksi
>
getTransaksi
();
@Query
(
"SELECT * FROM Transaksi ORDER BY orderId
DE
SC"
)
@Query
(
"SELECT * FROM Transaksi ORDER BY orderId
A
SC"
)
LiveData
<
List
<
Transaksi
>>
getAll
();
@Insert
(
onConflict
=
OnConflictStrategy
.
IGNORE
)
...
...
app/src/main/java/com/example/yourcashiertest/databases/DBHelper.java
View file @
92911f53
...
...
@@ -19,6 +19,12 @@ public class DBHelper {
return
list
;
}
public
static
Product
getProductById
(
Context
context
,
int
id
){
LocalDatabase
db
=
LocalDatabase
.
getDatabase
(
context
);
Product
data
=
db
.
productDao
().
getProductById
(
id
);
return
data
;
}
public
static
List
<
Cart
>
getAllCart
(
Context
context
){
List
<
Cart
>
list
;
LocalDatabase
db
=
LocalDatabase
.
getDatabase
(
context
);
...
...
app/src/main/java/com/example/yourcashiertest/models/User.java
View file @
92911f53
...
...
@@ -22,6 +22,13 @@ public class User implements Parcelable {
@SerializedName
(
"email"
)
private
String
email
;
@SerializedName
(
"token"
)
private
String
token
;
@SerializedName
(
"status"
)
private
int
status
;
public
User
(
Parcel
in
)
{
id
=
in
.
readInt
();
password
=
in
.
readString
();
...
...
@@ -86,6 +93,22 @@ public class User implements Parcelable {
return
email
;
}
public
String
getToken
()
{
return
token
;
}
public
void
setToken
(
String
token
)
{
this
.
token
=
token
;
}
public
int
getStatus
()
{
return
status
;
}
public
void
setStatus
(
int
status
)
{
this
.
status
=
status
;
}
@Override
public
int
describeContents
()
{
return
0
;
...
...
app/src/main/java/com/example/yourcashiertest/viewmodels/TransaksiViewModel.java
View file @
92911f53
...
...
@@ -30,6 +30,7 @@ public class TransaksiViewModel extends AndroidViewModel {
repository
.
insert
(
transaksi
);
}
public
void
updateTransaksi
(
Transaksi
transaksi
){
repository
.
update
(
transaksi
);
}
...
...
app/src/main/java/com/example/yourcashiertest/viewmodels/UserViewModel.java
View file @
92911f53
package
com
.
example
.
yourcashiertest
.
viewmodels
;
import
android.util.Log
;
import
android.widget.Toast
;
import
androidx.lifecycle.MutableLiveData
;
import
androidx.lifecycle.ViewModel
;
import
com.example.yourcashiertest.activities.RegisterActivity
;
import
com.example.yourcashiertest.clients.ApiClient
;
import
com.example.yourcashiertest.models.Login
;
import
com.example.yourcashiertest.models.Password
;
...
...
@@ -12,6 +14,7 @@ import com.example.yourcashiertest.models.ResponseUser;
import
com.example.yourcashiertest.models.User
;
import
com.example.yourcashiertest.services.UserService
;
import
java.util.Collections
;
import
java.util.List
;
import
retrofit2.Call
;
...
...
@@ -27,13 +30,11 @@ public class UserViewModel extends ViewModel {
public
MutableLiveData
<
List
<
User
>>
getListUser
(){
return
this
.
listUser
;
}
public
void
registrasi
(
User
user
){
ApiClient
.
client
(
UserService
.
class
,
BASE_URL
).
registerUser
(
user
)
.
enqueue
(
new
Callback
<
User
>()
{
@Override
public
void
onResponse
(
Call
<
User
>
call
,
Response
<
User
>
response
)
{
}
@Override
...
...
@@ -43,6 +44,7 @@ public class UserViewModel extends ViewModel {
});
}
public
void
setListUser
(){
ApiClient
.
client
(
UserService
.
class
,
BASE_URL
).
getAllUser
().
enqueue
(
new
Callback
<
ResponseUser
>()
{
@Override
...
...
app/src/main/res/layout/activity_cart.xml
View file @
92911f53
...
...
@@ -120,7 +120,8 @@
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"save"
android:backgroundTint=
"#0D2EE1"
android:textColor=
"@color/white"
android:backgroundTint=
"@color/blue"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"@+id/btnCheckout"
/>
...
...
app/src/main/res/layout/item_order.xml
View file @
92911f53
...
...
@@ -4,6 +4,7 @@
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
>
<data>
<import
type=
"android.view.View"
/>
<variable
name=
"transaction"
type=
"com.example.yourcashiertest.entities.Transaksi"
/>
...
...
@@ -12,6 +13,10 @@
name=
"amount"
type=
"String"
/>
<variable
name=
"visibility"
type=
"boolean"
/>
</data>
<com.google.android.material.card.MaterialCardView
android:layout_width=
"match_parent"
...
...
@@ -82,36 +87,43 @@
<TextView
android:id=
"@+id/tvStatus"
android:layout_width=
"
136
dp"
android:layout_width=
"
0
dp"
android:layout_height=
"41dp"
android:layout_marginStart=
"4dp"
android:layout_marginTop=
"4dp"
android:gravity=
"center"
android:textColor=
"@{visibility ? @color/colorPending : @color/colorPrimary}"
android:text=
"@{transaction.status}"
android:textStyle=
"bold"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintEnd_toStartOf=
"@+id/btnContinue"
app:layout_constraintTop_toBottomOf=
"@+id/tvTotal"
/>
<com.google.android.material.button.MaterialButton
android:id=
"@+id/btnContinue"
android:layout_width=
"
9
0dp"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"1
6
dp"
android:layout_marginStart=
"1
0
dp"
android:layout_marginTop=
"4dp"
android:visibility=
"@{visibility ? View.VISIBLE : View.GONE}"
android:text=
"CONTINUE"
android:textSize=
"10dp"
app:layout_constraintStart_toEndOf=
"@id/tvStatus"
app:layout_constraintEnd_toStartOf=
"@+id/btnCancel"
app:layout_constraintTop_toBottomOf=
"@id/tvAmount"
/>
<com.google.android.material.button.MaterialButton
android:id=
"@+id/btnCancel"
android:layout_width=
"
9
0dp"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"20dp"
android:layout_marginStart=
"10dp"
android:layout_marginEnd=
"7dp"
android:layout_marginTop=
"4dp"
android:visibility=
"@{visibility ? View.VISIBLE : View.GONE}"
android:text=
"CANCEL"
android:textSize=
"10dp"
app:backgroundTint=
"@color/colorDanger"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toEndOf=
"@id/btnContinue"
app:layout_constraintTop_toBottomOf=
"@id/tvAmount"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
...
...
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