Implement BantuanActivity UI

This commit is contained in:
riz081 2025-06-29 20:33:23 +07:00
parent 6f98a91372
commit 88069c0b56
8 changed files with 305 additions and 94 deletions

View File

@ -53,6 +53,7 @@ dependencies {
implementation libs.cardview
implementation 'androidx.recyclerview:recyclerview:1.3.0'
implementation 'androidx.cardview:cardview:1.0.0'
implementation 'com.google.android.material:material:1.11.0'
implementation 'com.sunmi:printerlibrary:1.0.15'

View File

@ -1,6 +1,7 @@
package com.example.bdkipoc.bantuan;
import android.content.Intent;
import android.graphics.Color;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
@ -16,7 +17,7 @@ public class BantuanActivity extends AppCompatActivity {
private LinearLayout tabUmum, tabRiwayat;
private TextView textUmum, textRiwayat;
private View contentUmum, contentRiwayat;
private Button btnForm, btnWhatsApp;
private LinearLayout btnForm, btnWhatsApp;
private LinearLayout backNavigation;
@Override
@ -68,12 +69,12 @@ public class BantuanActivity extends AppCompatActivity {
initViews();
setupListeners();
// Update tab appearance
tabUmum.setBackgroundResource(android.R.color.holo_red_dark);
// Update tab appearance menggunakan drawable yang sudah dibuat
tabUmum.setBackgroundResource(R.drawable.tab_active_bg);
textUmum.setTextColor(ContextCompat.getColor(this, android.R.color.white));
tabRiwayat.setBackgroundResource(android.R.color.transparent);
textRiwayat.setTextColor(ContextCompat.getColor(this, android.R.color.holo_red_dark));
tabRiwayat.setBackgroundResource(R.drawable.tab_inactive_bg);
textRiwayat.setTextColor(Color.parseColor("#DE0701"));
}
private void showRiwayatTab() {
@ -81,12 +82,12 @@ public class BantuanActivity extends AppCompatActivity {
initViews();
setupListeners();
// Update tab appearance
tabRiwayat.setBackgroundResource(android.R.color.holo_red_dark);
// Update tab appearance menggunakan drawable yang sudah dibuat
tabRiwayat.setBackgroundResource(R.drawable.tab_active_bg);
textRiwayat.setTextColor(ContextCompat.getColor(this, android.R.color.white));
tabUmum.setBackgroundResource(android.R.color.transparent);
textUmum.setTextColor(ContextCompat.getColor(this, android.R.color.holo_red_dark));
tabUmum.setBackgroundResource(R.drawable.tab_inactive_bg);
textUmum.setTextColor(Color.parseColor("#DE0701"));
}
private void setupFormView() {

View File

@ -0,0 +1,6 @@
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="@android:color/white"/>
<stroke android:width="1dp" android:color="#DE0701"/>
<corners android:radius="8dp"/>
</shape>

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -0,0 +1,8 @@
<!-- res/drawable/tab_active_bg.xml -->
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#DE0701" />
<corners android:radius="8dp" />
<stroke
android:width="1dp"
android:color="#FFFFFF" />
</shape>

View File

@ -0,0 +1,8 @@
<!-- res/drawable/tab_inactive_bg.xml -->
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#FFFFFF" />
<corners android:radius="8dp" />
<stroke
android:width="1dp"
android:color="#DE0701" />
</shape>

View File

@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
@ -11,15 +12,13 @@
<!-- Main Card Container -->
<androidx.cardview.widget.CardView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:layout_height="480dp"
android:layout_marginTop="-80dp"
android:layout_marginStart="16dp"
android:layout_marginEnd="16dp"
android:layout_marginBottom="16dp"
app:cardCornerRadius="16dp"
app:cardElevation="4dp"
xmlns:app="http://schemas.android.com/apk/res-auto">
app:cardCornerRadius="12dp"
app:cardElevation="4dp">
<LinearLayout
android:layout_width="match_parent"
@ -34,29 +33,25 @@
android:orientation="vertical"
android:padding="16dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="P"
android:textColor="@android:color/holo_red_dark"
android:textSize="40sp"
android:textStyle="bold"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Payvora\nPRO"
android:textColor="@android:color/holo_red_dark"
android:textSize="20sp"
android:textStyle="bold"
android:layout_marginTop="-20dp"/>
<ImageView
android:layout_width="94.149dp"
android:layout_height="38.248dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="10.9dp"
android:layout_marginStart="5dp"
android:src="@drawable/ic_logo_icon"
android:adjustViewBounds="true"
android:scaleType="fitCenter"
android:contentDescription="Payvora PRO Logo"/>
<!-- Tabs -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="16dp">
android:layout_marginTop="16dp"
android:paddingHorizontal="16dp"
android:gravity="center_horizontal">
<LinearLayout
android:id="@+id/tab_umum"
@ -64,16 +59,17 @@
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:padding="12dp">
android:padding="12dp"
android:background="@drawable/tab_inactive_bg"
android:layout_marginEnd="8dp">
<TextView
android:id="@+id/text_umum"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Umum"
android:textColor="@android:color/holo_red_dark"
android:textColor="#DE0701"
android:textSize="16sp"/>
</LinearLayout>
<LinearLayout
@ -81,18 +77,18 @@
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@android:color/holo_red_dark"
android:background="@drawable/tab_active_bg"
android:gravity="center"
android:padding="12dp">
android:padding="12dp"
android:layout_marginStart="8dp">
<TextView
android:id="@+id/text_riwayat"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Riwayat"
android:textColor="@android:color/white"
android:textColor="#FFFFFF"
android:textSize="16sp"/>
</LinearLayout>
</LinearLayout>
@ -107,7 +103,8 @@
<!-- Content -->
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent">
android:layout_height="match_parent"
android:paddingBottom="16dp">
<LinearLayout
android:layout_width="match_parent"
@ -317,6 +314,109 @@
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="#e0e0e0"/>
<!-- Additional History Items to match image 3 content -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="16dp"
android:background="@android:color/white">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="06-05-2025"
android:textSize="16sp"
android:textStyle="bold"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Selesai"
android:textColor="@android:color/holo_green_dark"
android:textSize="14sp"/>
</LinearLayout>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Nomor tiket: 0605250642"
android:textSize="14sp"
android:textColor="@android:color/darker_gray"
android:layout_marginTop="4dp"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="EDC tidak merespon / hang"
android:textSize="16sp"
android:layout_marginTop="8dp"/>
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="#e0e0e0"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="16dp"
android:background="@android:color/white">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="05-05-2025"
android:textSize="16sp"
android:textStyle="bold"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Proses"
android:textColor="@android:color/holo_orange_light"
android:textSize="14sp"/>
</LinearLayout>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Nomor tiket: 0505250531"
android:textSize="14sp"
android:textColor="@android:color/darker_gray"
android:layout_marginTop="4dp"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Gagal cetak struk"
android:textSize="16sp"
android:layout_marginTop="8dp"/>
</LinearLayout>
</LinearLayout>
</ScrollView>
@ -325,34 +425,64 @@
</androidx.cardview.widget.CardView>
<!-- Bottom Buttons - Outside Card -->
<!-- Bottom Buttons -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="16dp"
android:background="@android:color/white">
android:layout_marginTop="8dp"
android:paddingHorizontal="16dp"
android:paddingVertical="16dp"
android:background="@android:color/white"
android:gravity="center">
<Button
<!-- Tombol Isi Form -->
<LinearLayout
android:id="@+id/btn_form"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_height="48dp"
android:layout_weight="1"
android:layout_marginEnd="8dp"
android:text="Isi Form Bantuan"
android:textColor="@android:color/holo_red_dark"
android:background="@android:drawable/editbox_background"/>
android:orientation="horizontal"
android:gravity="center"
android:background="@drawable/border_button_red">
<Button
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Isi Form Bantuan"
android:textSize="14sp"
android:textColor="#DE0701"
android:fontFamily="sans-serif-medium" />
</LinearLayout>
<!-- Tombol WhatsApp -->
<LinearLayout
android:id="@+id/btn_whatsapp"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_height="48dp"
android:layout_weight="1"
android:layout_marginStart="8dp"
android:text="WhatsApp CS"
android:textColor="@android:color/white"
android:background="@android:color/holo_red_dark"/>
android:orientation="horizontal"
android:gravity="center"
android:background="@drawable/border_button_red"
android:paddingHorizontal="8dp">
<ImageView
android:layout_width="20dp"
android:layout_height="20dp"
android:src="@drawable/ic_whatsapp"
android:contentDescription="WhatsApp Icon"
android:layout_marginEnd="8dp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="WhatsApp CS"
android:textSize="14sp"
android:textColor="#DE0701"
android:fontFamily="sans-serif-medium" />
</LinearLayout>
</LinearLayout>
</LinearLayout>

View File

@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
@ -11,15 +12,13 @@
<!-- Main Card Container -->
<androidx.cardview.widget.CardView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:layout_height="480dp"
android:layout_marginTop="-80dp"
android:layout_marginStart="16dp"
android:layout_marginEnd="16dp"
android:layout_marginBottom="16dp"
app:cardCornerRadius="16dp"
app:cardElevation="4dp"
xmlns:app="http://schemas.android.com/apk/res-auto">
app:cardCornerRadius="12dp"
app:cardElevation="4dp">
<LinearLayout
android:layout_width="match_parent"
@ -34,47 +33,43 @@
android:orientation="vertical"
android:padding="16dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="P"
android:textColor="@android:color/holo_red_dark"
android:textSize="40sp"
android:textStyle="bold"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Payvora\nPRO"
android:textColor="@android:color/holo_red_dark"
android:textSize="20sp"
android:textStyle="bold"
android:layout_marginTop="-20dp"/>
<ImageView
android:layout_width="94.149dp"
android:layout_height="38.248dp"
android:layout_marginTop="5dp"
android:layout_marginLeft="10.9dp"
android:layout_marginStart="5dp"
android:src="@drawable/ic_logo_icon"
android:adjustViewBounds="true"
android:scaleType="fitCenter"
android:contentDescription="Payvora PRO Logo"/>
<!-- Tabs -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="16dp">
android:layout_marginTop="16dp"
android:paddingHorizontal="16dp"
android:gravity="center_horizontal">
<LinearLayout
android:id="@+id/tab_umum"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@android:color/holo_red_dark"
android:gravity="center"
android:padding="12dp">
android:padding="12dp"
android:background="@drawable/tab_active_bg"
android:layout_marginEnd="8dp">
<TextView
android:id="@+id/text_umum"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Umum"
android:textColor="@android:color/white"
android:textColor="#FFFFFF"
android:textSize="16sp"/>
</LinearLayout>
<LinearLayout
@ -82,17 +77,18 @@
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@drawable/tab_inactive_bg"
android:gravity="center"
android:padding="12dp">
android:padding="12dp"
android:layout_marginStart="8dp">
<TextView
android:id="@+id/text_riwayat"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Riwayat"
android:textColor="@android:color/holo_red_dark"
android:textColor="#DE0701"
android:textSize="16sp"/>
</LinearLayout>
</LinearLayout>
@ -107,13 +103,44 @@
<!-- Content -->
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent">
android:layout_height="match_parent"
android:paddingBottom="16dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<!-- Add new item at top like in image 3 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="16dp"
android:background="@android:color/white"
android:gravity="center_vertical">
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Transaksi gagal tapi saldo terpotong"
android:textSize="16sp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Lihat Solusi"
android:textColor="@android:color/holo_blue_light"
android:textSize="14sp"/>
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="#e0e0e0"/>
<!-- Help Items -->
<LinearLayout
android:layout_width="match_parent"
@ -413,29 +440,59 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="16dp"
android:background="@android:color/white">
android:layout_marginTop="8dp"
android:paddingHorizontal="16dp"
android:paddingVertical="16dp"
android:background="@android:color/white"
android:gravity="center">
<Button
<!-- Tombol Isi Form -->
<LinearLayout
android:id="@+id/btn_form"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_height="48dp"
android:layout_weight="1"
android:layout_marginEnd="8dp"
android:text="Isi Form Bantuan"
android:textColor="@android:color/holo_red_dark"
android:background="@android:drawable/editbox_background"/>
android:orientation="horizontal"
android:gravity="center"
android:background="@drawable/border_button_red">
<Button
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Isi Form Bantuan"
android:textSize="14sp"
android:textColor="#DE0701"
android:fontFamily="sans-serif-medium" />
</LinearLayout>
<!-- Tombol WhatsApp -->
<LinearLayout
android:id="@+id/btn_whatsapp"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_height="48dp"
android:layout_weight="1"
android:layout_marginStart="8dp"
android:text="WhatsApp CS"
android:textColor="@android:color/white"
android:background="@android:color/holo_red_dark"/>
android:orientation="horizontal"
android:gravity="center"
android:background="@drawable/border_button_red"
android:paddingHorizontal="8dp">
<ImageView
android:layout_width="20dp"
android:layout_height="20dp"
android:src="@drawable/ic_whatsapp"
android:contentDescription="WhatsApp Icon"
android:layout_marginEnd="8dp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="WhatsApp CS"
android:textSize="14sp"
android:textColor="#DE0701"
android:fontFamily="sans-serif-medium" />
</LinearLayout>
</LinearLayout>
</LinearLayout>