Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
M
meser
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
Muhammad Suryono
meser
Commits
11a69354
Commit
11a69354
authored
Aug 23, 2020
by
Muhammad Suryono
Browse files
Options
Browse Files
Download
Plain Diff
merge from cart
parents
9f6fc32a
802056dc
Hide whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
586 additions
and
2 deletions
+586
-2
misc.xml
.idea/misc.xml
+1
-1
vcs.xml
.idea/vcs.xml
+1
-0
AndroidManifest.xml
app/src/main/AndroidManifest.xml
+5
-0
CartActivity.java
app/src/main/java/com/yono/messeripos/CartActivity.java
+81
-0
MainActivity.java
app/src/main/java/com/yono/messeripos/MainActivity.java
+9
-0
PaymentActivity.java
app/src/main/java/com/yono/messeripos/PaymentActivity.java
+33
-0
PaymentAdapter.java
app/src/main/java/com/yono/messeripos/PaymentAdapter.java
+92
-0
PaymentModel.java
app/src/main/java/com/yono/messeripos/PaymentModel.java
+28
-0
ic_baseline_delete_24.xml
app/src/main/res/drawable/ic_baseline_delete_24.xml
+5
-0
ic_baseline_minus_24.xml
app/src/main/res/drawable/ic_baseline_minus_24.xml
+5
-0
ic_baseline_plus_24.xml
app/src/main/res/drawable/ic_baseline_plus_24.xml
+5
-0
ic_bni_logo.xml
app/src/main/res/drawable/ic_bni_logo.xml
+78
-0
ic_rounded_circle.xml
app/src/main/res/drawable/ic_rounded_circle.xml
+17
-0
skeleton.xml
app/src/main/res/drawable/skeleton.xml
+7
-0
activity_cart.xml
app/src/main/res/layout/activity_cart.xml
+120
-0
activity_main.xml
app/src/main/res/layout/activity_main.xml
+1
-0
activity_payment.xml
app/src/main/res/layout/activity_payment.xml
+25
-0
payment_list.xml
app/src/main/res/layout/payment_list.xml
+68
-0
menu_bar.xml
app/src/main/res/menu/menu_bar.xml
+4
-0
strings.xml
app/src/main/res/values/strings.xml
+1
-1
No files found.
.idea/misc.xml
View file @
11a69354
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<project
version=
"4"
>
<project
version=
"4"
>
<component
name=
"ProjectRootManager"
version=
"2"
languageLevel=
"JDK_1_
7
"
project-jdk-name=
"1.8"
project-jdk-type=
"JavaSDK"
>
<component
name=
"ProjectRootManager"
version=
"2"
languageLevel=
"JDK_1_
8
"
project-jdk-name=
"1.8"
project-jdk-type=
"JavaSDK"
>
<output
url=
"file://$PROJECT_DIR$/build/classes"
/>
<output
url=
"file://$PROJECT_DIR$/build/classes"
/>
</component>
</component>
<component
name=
"ProjectType"
>
<component
name=
"ProjectType"
>
...
...
.idea/vcs.xml
View file @
11a69354
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<project
version=
"4"
>
<project
version=
"4"
>
<component
name=
"VcsDirectoryMappings"
>
<component
name=
"VcsDirectoryMappings"
>
<mapping
directory=
"$PROJECT_DIR$"
vcs=
"Git"
/>
<mapping
directory=
"$PROJECT_DIR$"
vcs=
"Git"
/>
</component>
</component>
</project>
</project>
\ No newline at end of file
app/src/main/AndroidManifest.xml
View file @
11a69354
...
@@ -2,6 +2,8 @@
...
@@ -2,6 +2,8 @@
<manifest
xmlns:android=
"http://schemas.android.com/apk/res/android"
<manifest
xmlns:android=
"http://schemas.android.com/apk/res/android"
package=
"com.yono.messeripos"
>
package=
"com.yono.messeripos"
>
<uses-permission
android:name=
"android.permission.INTERNET"
/>
<application
<application
android:allowBackup=
"true"
android:allowBackup=
"true"
android:icon=
"@mipmap/ic_launcher"
android:icon=
"@mipmap/ic_launcher"
...
@@ -9,6 +11,8 @@
...
@@ -9,6 +11,8 @@
android:roundIcon=
"@mipmap/ic_launcher"
android:roundIcon=
"@mipmap/ic_launcher"
android:supportsRtl=
"true"
android:supportsRtl=
"true"
android:theme=
"@style/AppTheme"
>
android:theme=
"@style/AppTheme"
>
<activity
android:name=
".PaymentActivity"
></activity>
<activity
android:name=
".CartActivity"
/>
<activity
android:name=
".MainActivity"
>
<activity
android:name=
".MainActivity"
>
<intent-filter>
<intent-filter>
<action
android:name=
"android.intent.action.MAIN"
/>
<action
android:name=
"android.intent.action.MAIN"
/>
...
@@ -16,6 +20,7 @@
...
@@ -16,6 +20,7 @@
<category
android:name=
"android.intent.category.LAUNCHER"
/>
<category
android:name=
"android.intent.category.LAUNCHER"
/>
</intent-filter>
</intent-filter>
</activity>
</activity>
<meta-data
<meta-data
android:name=
"preloaded_fonts"
android:name=
"preloaded_fonts"
android:resource=
"@array/preloaded_fonts"
/>
android:resource=
"@array/preloaded_fonts"
/>
...
...
app/src/main/java/com/yono/messeripos/CartActivity.java
0 → 100644
View file @
11a69354
package
com
.
yono
.
messeripos
;
import
androidx.appcompat.app.AppCompatActivity
;
import
android.os.Bundle
;
import
android.view.View
;
import
android.widget.ImageButton
;
import
android.widget.TextView
;
import
com.google.android.material.textfield.TextInputEditText
;
import
java.text.NumberFormat
;
import
java.util.Locale
;
public
class
CartActivity
extends
AppCompatActivity
{
ImageButton
btMinus
,
btPlus
,
btDelete
;
TextInputEditText
tiQty
;
TextView
tvQtyView
,
tvPrice
,
tvTotal
;
private
int
counter
;
@Override
protected
void
onCreate
(
Bundle
savedInstanceState
)
{
super
.
onCreate
(
savedInstanceState
);
setContentView
(
R
.
layout
.
activity_cart
);
btMinus
=
findViewById
(
R
.
id
.
btMinus
);
btPlus
=
findViewById
(
R
.
id
.
btPlus
);
btDelete
=
findViewById
(
R
.
id
.
btDelete
);
tiQty
=
findViewById
(
R
.
id
.
etQty
);
tvQtyView
=
findViewById
(
R
.
id
.
tvQuantity
);
tvPrice
=
findViewById
(
R
.
id
.
tvPrice
);
tvTotal
=
findViewById
(
R
.
id
.
tvTotal
);
counter
=
Integer
.
parseInt
(
tvQtyView
.
getText
().
toString
());
btMinus
.
setOnClickListener
(
new
View
.
OnClickListener
()
{
@Override
public
void
onClick
(
View
view
)
{
if
(
counter
>
1
){
counter
--;
tiQty
.
setText
(
Integer
.
toString
(
counter
));
tvQtyView
.
setText
(
Integer
.
toString
(
counter
));
countTotal
();
}
}
});
btPlus
.
setOnClickListener
(
new
View
.
OnClickListener
()
{
@Override
public
void
onClick
(
View
view
)
{
counter
++;
tiQty
.
setText
(
Integer
.
toString
(
counter
));
tvQtyView
.
setText
(
Integer
.
toString
(
counter
));
countTotal
();
}
});
}
private
void
countTotal
()
{
int
price
=
Integer
.
parseInt
(
tvPrice
.
getText
().
toString
());
int
qtyView
=
Integer
.
parseInt
(
tvQtyView
.
getText
().
toString
());
int
count
=
price
*
qtyView
;
String
result
=
Integer
.
toString
(
price
*
qtyView
);
// set to view
tvTotal
.
setText
(
setToRp
().
format
((
double
)
count
));
}
private
NumberFormat
setToRp
()
{
Locale
ID
=
new
Locale
(
"in"
,
"ID"
);
NumberFormat
formatRp
=
NumberFormat
.
getCurrencyInstance
(
ID
);
return
formatRp
;
}
}
\ No newline at end of file
app/src/main/java/com/yono/messeripos/MainActivity.java
View file @
11a69354
package
com
.
yono
.
messeripos
;
package
com
.
yono
.
messeripos
;
import
androidx.appcompat.app.AppCompatActivity
;
import
androidx.appcompat.app.AppCompatActivity
;
import
androidx.recyclerview.widget.DividerItemDecoration
;
import
androidx.recyclerview.widget.LinearLayoutManager
;
import
androidx.recyclerview.widget.RecyclerView
;
import
android.content.Intent
;
import
android.os.Bundle
;
import
android.os.Bundle
;
import
android.widget.ImageView
;
import
java.util.ArrayList
;
import
java.util.List
;
public
class
MainActivity
extends
AppCompatActivity
{
public
class
MainActivity
extends
AppCompatActivity
{
...
@@ -11,4 +19,5 @@ public class MainActivity extends AppCompatActivity {
...
@@ -11,4 +19,5 @@ public class MainActivity extends AppCompatActivity {
super
.
onCreate
(
savedInstanceState
);
super
.
onCreate
(
savedInstanceState
);
setContentView
(
R
.
layout
.
activity_main
);
setContentView
(
R
.
layout
.
activity_main
);
}
}
}
}
\ No newline at end of file
app/src/main/java/com/yono/messeripos/PaymentActivity.java
0 → 100644
View file @
11a69354
package
com
.
yono
.
messeripos
;
import
androidx.appcompat.app.AppCompatActivity
;
import
androidx.recyclerview.widget.LinearLayoutManager
;
import
androidx.recyclerview.widget.RecyclerView
;
import
android.os.Bundle
;
import
java.util.ArrayList
;
public
class
PaymentActivity
extends
AppCompatActivity
{
private
ArrayList
<
PaymentModel
>
paymentModels
=
new
ArrayList
<>();
@Override
protected
void
onCreate
(
Bundle
savedInstanceState
)
{
super
.
onCreate
(
savedInstanceState
);
setContentView
(
R
.
layout
.
activity_payment
);
RecyclerView
rvPayment
=
findViewById
(
R
.
id
.
rvPayment
);
LinearLayoutManager
llm
=
new
LinearLayoutManager
(
this
);
rvPayment
.
setLayoutManager
(
llm
);
paymentModels
.
add
(
new
PaymentModel
(
"https://i.ibb.co/XCsdmmT/Bank-Mandiri-logo.png"
,
"mandiri"
));
paymentModels
.
add
(
new
PaymentModel
(
"https://i.ibb.co/2n65nCT/bca-bank-central-asia.png"
,
"bca"
));
paymentModels
.
add
(
new
PaymentModel
(
"https://i.ibb.co/RjJQT9K/BNI-logo.png"
,
"bni"
));
PaymentAdapter
adapter
=
new
PaymentAdapter
(
paymentModels
,
this
);
rvPayment
.
setAdapter
(
adapter
);
}
}
\ No newline at end of file
app/src/main/java/com/yono/messeripos/PaymentAdapter.java
0 → 100644
View file @
11a69354
package
com
.
yono
.
messeripos
;
import
android.content.Context
;
import
android.content.Intent
;
import
android.util.Log
;
import
android.view.LayoutInflater
;
import
android.view.View
;
import
android.view.ViewGroup
;
import
android.widget.Button
;
import
android.widget.ImageView
;
import
android.widget.RadioButton
;
import
android.widget.TextView
;
import
androidx.annotation.NonNull
;
import
androidx.cardview.widget.CardView
;
import
androidx.recyclerview.widget.RecyclerView
;
import
com.bumptech.glide.Glide
;
import
com.bumptech.glide.request.RequestOptions
;
import
java.util.ArrayList
;
public
class
PaymentAdapter
extends
RecyclerView
.
Adapter
<
PaymentAdapter
.
ViewHolder
>
{
private
ArrayList
<
PaymentModel
>
paymentModels
;
Context
context
;
int
getPosition
=
-
1
;
public
PaymentAdapter
(
ArrayList
<
PaymentModel
>
paymentModels
,
PaymentActivity
mainActivity
)
{
this
.
paymentModels
=
paymentModels
;
this
.
context
=
mainActivity
;
}
@NonNull
@Override
public
ViewHolder
onCreateViewHolder
(
@NonNull
ViewGroup
parent
,
int
viewType
)
{
View
view
=
LayoutInflater
.
from
(
parent
.
getContext
())
.
inflate
(
R
.
layout
.
payment_list
,
parent
,
false
);
return
new
ViewHolder
(
view
);
}
@Override
public
void
onBindViewHolder
(
@NonNull
ViewHolder
holder
,
int
position
)
{
holder
.
cardView
.
setTag
(
position
);
holder
.
radioButton
.
setChecked
(
position
==
getPosition
);
final
PaymentModel
paymentModel
=
paymentModels
.
get
(
position
);
ImageView
imageView
=
holder
.
logoComp
;
Glide
.
with
(
context
)
.
load
(
paymentModel
.
getUrl
())
.
apply
(
new
RequestOptions
().
placeholder
(
R
.
drawable
.
skeleton
))
.
into
(
imageView
);
}
@Override
public
int
getItemCount
()
{
return
paymentModels
.
size
();
}
public
class
ViewHolder
extends
RecyclerView
.
ViewHolder
{
public
CardView
cardView
;
public
ImageView
logoComp
;
public
RadioButton
radioButton
;
public
TextView
textView
;
public
Button
btnPay
;
public
ViewHolder
(
@NonNull
View
itemView
)
{
super
(
itemView
);
cardView
=
itemView
.
findViewById
(
R
.
id
.
cvPayment
);
logoComp
=
itemView
.
findViewById
(
R
.
id
.
ivLogo
);
radioButton
=
itemView
.
findViewById
(
R
.
id
.
rbPayment
);
textView
=
itemView
.
findViewById
(
R
.
id
.
tvPayment
);
btnPay
=
itemView
.
findViewById
(
R
.
id
.
btnPay
);
cardView
.
setOnClickListener
(
new
View
.
OnClickListener
()
{
@Override
public
void
onClick
(
View
view
)
{
getPosition
=
getAdapterPosition
();
notifyDataSetChanged
();
if
(
getPosition
==
Integer
.
parseInt
(
cardView
.
getTag
().
toString
()))
radioButton
.
setChecked
(
true
);
else
radioButton
.
setChecked
(
false
);
}
});
}
}
}
app/src/main/java/com/yono/messeripos/PaymentModel.java
0 → 100644
View file @
11a69354
package
com
.
yono
.
messeripos
;
public
class
PaymentModel
{
private
String
url
;
private
String
bank
;
public
PaymentModel
(
String
url
,
String
bank
)
{
this
.
url
=
url
;
this
.
bank
=
bank
;
}
public
void
setUrl
(
String
url
)
{
this
.
url
=
url
;
}
public
String
getUrl
()
{
return
url
;
}
public
String
getBank
()
{
return
bank
;
}
public
void
setBank
(
String
bank
)
{
this
.
bank
=
bank
;
}
}
\ No newline at end of file
app/src/main/res/drawable/ic_baseline_delete_24.xml
0 → 100644
View file @
11a69354
<vector
android:height=
"24dp"
android:tint=
"#FF4A50"
android:viewportHeight=
"24"
android:viewportWidth=
"24"
android:width=
"24dp"
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<path
android:fillColor=
"@android:color/white"
android:pathData=
"M6,19c0,1.1 0.9,2 2,2h8c1.1,0 2,-0.9 2,-2V7H6v12zM19,4h-3.5l-1,-1h-5l-1,1H5v2h14V4z"
/>
</vector>
app/src/main/res/drawable/ic_baseline_minus_24.xml
0 → 100644
View file @
11a69354
<vector
android:height=
"24dp"
android:tint=
"#313131"
android:viewportHeight=
"24"
android:viewportWidth=
"24"
android:width=
"24dp"
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<path
android:fillColor=
"@android:color/white"
android:pathData=
"M19,13H5v-2h14v2z"
/>
</vector>
app/src/main/res/drawable/ic_baseline_plus_24.xml
0 → 100644
View file @
11a69354
<vector
android:height=
"24dp"
android:tint=
"#313131"
android:viewportHeight=
"24"
android:viewportWidth=
"24"
android:width=
"24dp"
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<path
android:fillColor=
"@android:color/white"
android:pathData=
"M19,13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"
/>
</vector>
app/src/main/res/drawable/ic_bni_logo.xml
0 → 100644
View file @
11a69354
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"175dp"
android:height=
"57dp"
android:viewportWidth=
"175"
android:viewportHeight=
"57"
>
<path
android:pathData=
"M2.64,22.756L17.053,40.938L2.64,52.882L2.64,22.756L2.64,22.756z"
android:strokeLineJoin=
"miter"
android:strokeWidth=
"1"
android:fillColor=
"#F15A23"
android:strokeColor=
"#00000000"
android:fillType=
"evenOdd"
android:strokeLineCap=
"butt"
/>
<path
android:pathData=
"M8.441,52.882L19.286,43.809L26.782,52.882L8.441,52.882z"
android:strokeLineJoin=
"miter"
android:strokeWidth=
"1"
android:fillColor=
"#F15A23"
android:strokeColor=
"#00000000"
android:fillType=
"evenOdd"
android:strokeLineCap=
"butt"
/>
<path
android:pathData=
"M2.64,13.027L6.401,17.785L21.866,37.11L26.878,33.12C26.878,33.12 22.718,28.222 19.924,22.756C14.462,12.07 18.329,5.417 18.329,5.417L2.64,5.417L2.64,13.027z"
android:strokeLineJoin=
"miter"
android:strokeWidth=
"1"
android:fillColor=
"#F15A23"
android:strokeColor=
"#00000000"
android:fillType=
"evenOdd"
android:strokeLineCap=
"butt"
/>
<path
android:pathData=
"M24.071,40.094L29.175,35.878C29.175,35.878 34.049,42.294 39.701,43.809C47.108,45.794 50.387,40.938 50.387,40.938L50.387,52.882L34.119,52.882L37.787,49.71C37.787,49.71 35.873,50.986 31.192,47.744C28.43,45.83 24.071,40.094 24.071,40.094z"
android:strokeLineJoin=
"miter"
android:strokeWidth=
"1"
android:fillColor=
"#F15A23"
android:strokeColor=
"#00000000"
android:fillType=
"evenOdd"
android:strokeLineCap=
"butt"
/>
<path
android:pathData=
"M24.54,5.382C24.54,5.382 22.912,7.6 24.071,13.027C25.31,18.828 30.236,24.967 30.225,24.829C30.225,24.829 30.541,18.733 34.119,15.156C41.744,7.531 50.387,12.07 50.387,12.07L50.387,5.417L24.54,5.382z"
android:strokeLineJoin=
"miter"
android:strokeWidth=
"1"
android:fillColor=
"#F15A23"
android:strokeColor=
"#00000000"
android:fillType=
"evenOdd"
android:strokeLineCap=
"butt"
/>
<path
android:pathData=
"M50.387,20.109C50.387,20.109 45.565,15.978 41.372,15.978C36.009,15.978 33.082,20.608 33.082,23.967C33.082,28.859 35.43,31.577 37.787,33.934C41.174,37.321 45.295,40.974 50.387,38.034C50.387,32.469 50.387,20.109 50.387,20.109z"
android:strokeLineJoin=
"miter"
android:strokeWidth=
"1"
android:fillColor=
"#F15A23"
android:strokeColor=
"#00000000"
android:fillType=
"evenOdd"
android:strokeLineCap=
"butt"
/>
<path
android:pathData=
"M105.304,5.88L116.683,5.88C116.683,5.88 126.764,21.143 131.718,27.449C136.672,33.755 142.004,40.938 142.004,40.938C142.004,40.938 142.004,20.109 142.004,9.298C142.004,7.931 138.416,5.88 138.416,5.88L151.538,5.88C151.538,5.88 147.233,7.649 147.233,9.298C147.233,22.756 147.233,55.327 147.233,55.327C147.233,55.327 143.101,53.036 138.416,47.592C133.153,41.476 114.428,16.781 114.428,16.781C114.428,16.781 114.428,40.094 114.428,48.766C114.428,50.404 118.016,52.882 118.016,52.882L105.304,52.882C105.304,52.882 108.79,50.384 108.79,48.766C108.79,37.11 108.79,20.109 108.79,9.298C108.79,7.845 105.304,5.88 105.304,5.88z"
android:strokeLineJoin=
"miter"
android:strokeWidth=
"1"
android:fillColor=
"#005E6A"
android:strokeColor=
"#00000000"
android:fillType=
"evenOdd"
android:strokeLineCap=
"butt"
/>
<path
android:pathData=
"M158.887,5.88L173.492,5.88C173.492,5.88 169.57,7.737 169.57,9.298C169.57,20.109 169.57,38.034 169.57,48.766C169.57,50.471 173.492,52.882 173.492,52.882L158.887,52.882C158.887,52.882 162.539,50.417 162.539,48.766C162.539,35.878 162.539,20.109 162.539,9.298C162.539,7.797 158.887,5.88 158.887,5.88z"
android:strokeLineJoin=
"miter"
android:strokeWidth=
"1"
android:fillColor=
"#005E6A"
android:strokeColor=
"#00000000"
android:fillType=
"evenOdd"
android:strokeLineCap=
"butt"
/>
<path
android:pathData=
"M62.337,5.88C62.337,5.88 66.123,7.768 66.123,9.298C66.123,20.109 66.123,35.878 66.123,48.766C66.123,50.444 62.337,52.882 62.337,52.882L62.337,52.882C62.337,52.882 81.252,52.882 83.973,52.882C85.325,52.882 100.47,50.405 100.47,38.729C100.47,27.053 88.706,25.959 88.706,25.959C88.706,25.959 95.873,23.967 95.873,15.978C95.873,7.367 85.325,5.88 83.973,5.88C81.163,5.88 62.337,5.88 62.337,5.88zM73.831,25.185L73.831,10.491C73.831,10.491 80.102,10.491 82.62,10.491C83.973,10.491 88.706,12.07 88.706,17.928C88.706,22.756 83.973,25.185 82.62,25.185C79.555,25.185 73.831,25.185 73.831,25.185zM73.831,29.039C73.831,29.039 82.62,29.039 83.973,29.039C85.325,29.039 93.303,31.112 93.303,38.034C93.303,45.091 85.325,47.592 83.973,47.592C82.62,47.592 73.831,47.592 73.831,47.592L73.831,29.039z"
android:strokeLineJoin=
"miter"
android:strokeWidth=
"1"
android:fillColor=
"#005E6A"
android:strokeColor=
"#00000000"
android:fillType=
"evenOdd"
android:strokeLineCap=
"butt"
/>
</vector>
app/src/main/res/drawable/ic_rounded_circle.xml
0 → 100644
View file @
11a69354
<?xml version="1.0" encoding="utf-8"?>
<ripple
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:color=
"#74333333"
>
<item
android:id=
"@android:id/mask"
>
<shape
android:shape=
"rectangle"
>
<solid
android:color=
"#25333333"
/>
<corners
android:radius=
"50dp"
/>
</shape>
</item>
<item
android:id=
"@android:id/background"
>
<shape
android:shape=
"rectangle"
>
<solid
android:color=
"#0D333333"
/>
<corners
android:radius=
"50dp"
/>
</shape>
</item>
</ripple>
\ No newline at end of file
app/src/main/res/drawable/skeleton.xml
0 → 100644
View file @
11a69354
<?xml version="1.0" encoding="UTF-8"?>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
>
<solid
android:color=
"#20333333"
/>
<corners
android:radius=
"4dp"
/>
</shape>
\ No newline at end of file
app/src/main/res/layout/activity_cart.xml
0 → 100644
View file @
11a69354
<?xml version="1.0" encoding="utf-8"?>
<com.google.android.material.card.MaterialCardView
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:paddingVertical=
"15dp"
android:paddingHorizontal=
"20dp"
>
<com.google.android.material.textview.MaterialTextView
android:id=
"@+id/tvProductName"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"@string/hint_product_name"
android:fontFamily=
"@font/roboto"
android:textSize=
"24sp"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
/>
<com.google.android.material.textview.MaterialTextView
android:id=
"@+id/tvPrice"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"@string/hint_price"
android:fontFamily=
"@font/roboto"
android:textSize=
"16sp"
app:layout_constraintTop_toBottomOf=
"@+id/tvProductName"
app:layout_constraintStart_toStartOf=
"@id/tvProductName"
/>
<com.google.android.material.textview.MaterialTextView
android:id=
"@+id/cross"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"x"
android:fontFamily=
"@font/roboto"
android:textSize=
"16sp"
android:layout_marginStart=
"10dp"
app:layout_constraintStart_toEndOf=
"@id/tvPrice"
app:layout_constraintBottom_toBottomOf=
"@id/tvPrice"
/>
<com.google.android.material.textview.MaterialTextView
android:id=
"@+id/tvQuantity"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"1"
android:fontFamily=
"@font/roboto"
android:textSize=
"16sp"
android:layout_marginStart=
"10dp"
app:layout_constraintStart_toEndOf=
"@id/cross"
app:layout_constraintBottom_toBottomOf=
"@id/cross"
/>
<com.google.android.material.textview.MaterialTextView
android:id=
"@+id/tvTotal"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"@string/hint_price"
android:fontFamily=
"@font/roboto"
android:textSize=
"16sp"
android:textFontWeight=
"600"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintBottom_toBottomOf=
"@id/tvQuantity"
/>
<ImageButton
android:id=
"@+id/btMinus"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:padding=
"10dp"
android:layout_marginTop=
"20dp"
android:src=
"@drawable/ic_baseline_minus_24"
android:background=
"@drawable/ic_rounded_circle"
app:layout_constraintTop_toBottomOf=
"@id/tvPrice"
app:layout_constraintStart_toStartOf=
"parent"
/>
<com.google.android.material.textfield.TextInputLayout
android:id=
"@+id/tiQty"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
app:boxBackgroundColor=
"#fff"
app:layout_constraintBottom_toBottomOf=
"@id/btMinus"
app:layout_constraintStart_toEndOf=
"@id/btMinus"
>
<com.google.android.material.textfield.TextInputEditText
android:id=
"@+id/etQty"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"1"
android:textColor=
"#333"
/>
</com.google.android.material.textfield.TextInputLayout>
<ImageButton
android:id=
"@+id/btPlus"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:padding=
"10dp"
android:src=
"@drawable/ic_baseline_plus_24"
android:background=
"@drawable/ic_rounded_circle"
app:layout_constraintStart_toEndOf=
"@id/tiQty"
app:layout_constraintBottom_toBottomOf=
"@id/tiQty"
/>
<ImageButton
android:id=
"@+id/btDelete"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:backgroundTint=
"#00FFFFFF"
android:src=
"@drawable/ic_baseline_delete_24"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintBottom_toBottomOf=
"@id/btPlus"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
</com.google.android.material.card.MaterialCardView>
app/src/main/res/layout/activity_main.xml
View file @
11a69354
...
@@ -15,4 +15,5 @@
...
@@ -15,4 +15,5 @@
app:layout_constraintRight_toRightOf=
"parent"
app:layout_constraintRight_toRightOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
/>
app:layout_constraintTop_toTopOf=
"parent"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
app/src/main/res/layout/activity_payment.xml
0 → 100644
View file @
11a69354
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:padding=
"10dp"
tools:context=
".PaymentActivity"
>
<androidx.recyclerview.widget.RecyclerView
android:id=
"@+id/rvPayment"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
app:layout_constraintTop_toTopOf=
"parent"
/>
<com.google.android.material.button.MaterialButton
android:id=
"@+id/btnPay"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:text=
"pay"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
app/src/main/res/layout/payment_list.xml
0 → 100644
View file @
11a69354
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
android:layout_height=
"wrap_content"
android:layout_width=
"match_parent"
android:layout_marginVertical=
"2dp"
>
<com.google.android.material.card.MaterialCardView
android:id=
"@+id/cvPayment"
android:layout_height=
"wrap_content"
android:layout_width=
"match_parent"
app:layout_constraintTop_toTopOf=
"parent"
app:strokeWidth=
"1dp"
app:strokeColor=
"#22333333"
>
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:padding=
"15dp"
>
<View
android:id=
"@+id/icon"
android:layout_width=
"131dp"
android:layout_height=
"39dp"
android:layout_margin=
"15dp"
android:visibility=
"invisible"
android:layout_gravity=
"center_vertical"
android:background=
"@drawable/skeleton"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
/>
<ImageView
android:id=
"@+id/ivLogo"
android:layout_width=
"131dp"
android:layout_height=
"39dp"
android:src=
"@drawable/ic_bni_logo"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
/>
<TextView
android:id=
"@+id/tvPayment"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"@string/app_name"
android:visibility=
"invisible"
app:layout_constraintStart_toEndOf=
"@id/ivLogo"
app:layout_constraintTop_toTopOf=
"parent"
/>
<com.google.android.material.radiobutton.MaterialRadioButton
android:id=
"@+id/rbPayment"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:gravity=
"center"
android:enabled=
"false"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintBottom_toBottomOf=
"@id/ivLogo"
app:layout_constraintTop_toTopOf=
"@id/ivLogo"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
</com.google.android.material.card.MaterialCardView>
</androidx.constraintlayout.widget.ConstraintLayout>
app/src/main/res/menu/menu_bar.xml
0 → 100644
View file @
11a69354
<?xml version="1.0" encoding="utf-8"?>
<menu
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
</menu>
\ No newline at end of file
app/src/main/res/values/strings.xml
View file @
11a69354
...
@@ -14,7 +14,7 @@
...
@@ -14,7 +14,7 @@
<string
name=
"hint_product_name"
>
Product Name
</string>
<string
name=
"hint_product_name"
>
Product Name
</string>
<string
name=
"hint_category"
>
Category Name
</string>
<string
name=
"hint_category"
>
Category Name
</string>
<string
name=
"hint_quantity"
>
0
</string>
<string
name=
"hint_quantity"
>
0
</string>
<string
name=
"hint_price"
>
Rp. xxx
</string>
<string
name=
"hint_price"
>
1000
</string>
<string
name=
"hint_description"
>
Description
</string>
<string
name=
"hint_description"
>
Description
</string>
</resources>
</resources>
\ No newline at end of file
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