Add address method for user

This commit is contained in:
Nezumi
2023-03-18 12:37:15 +07:00
parent 893c1f232d
commit ac603fe941
11 changed files with 405 additions and 78 deletions
@@ -1,25 +1,36 @@
package com.capstone.foodify.Adapter;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.Spinner;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.recyclerview.widget.RecyclerView;
import com.capstone.foodify.Common;
import com.capstone.foodify.Model.Address;
import com.capstone.foodify.R;
import com.google.android.material.textfield.TextInputLayout;
import com.sjapps.library.customdialog.CustomViewDialog;
import com.sjapps.library.customdialog.DialogButtonEvents;
import java.util.List;
public class AddressAdapter extends RecyclerView.Adapter<AddressAdapter.AddressViewHolder>{
private List<Address> listAddress;
private Context context;
public AddressAdapter() {
public AddressAdapter(Context context) {
this.context = context;
}
public void setData(List<Address> listAddress){
@@ -46,6 +57,12 @@ public class AddressAdapter extends RecyclerView.Adapter<AddressAdapter.AddressV
//Bind data to component
holder.text_view_address.setText(fullAddress);
holder.edit_btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showAddAddressDialog();
}
});
}
@@ -56,6 +73,85 @@ public class AddressAdapter extends RecyclerView.Adapter<AddressAdapter.AddressV
return 0;
}
private void showAddAddressDialog(){
View view = LayoutInflater.from(context).inflate(R.layout.add_address_dialog,null);
//Init component
TextInputLayout textInput_address = view.findViewById(R.id.textInput_address);
Spinner wardSpinner = view.findViewById(R.id.ward);
Spinner districtSpinner = view.findViewById(R.id.district);
EditText edt_address = view.findViewById(R.id.edt_address);
TextView errorTextDistrictWard = view.findViewById(R.id.errorTextDistrictWard);
ConstraintLayout progressLayoutDialog = view.findViewById(R.id.progress_layout);
//Set font
// textInput_address.setTypeface(Common.setFontOpenSans(getAssets()));
//Load district and ward
// if(districtList.size() == 0){
// getListDistrict();
// } else {
// setAdapter(districtList, "---Quận", districtSpinner);
// }
// getListWard(0);
//
// //Set event when click on district spinner
// districtSpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
// @Override
// public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
// getListWard(i);
// }
//
// @Override
// public void onNothingSelected(AdapterView<?> adapterView) {
//
// }
// });
CustomViewDialog customViewDialog = new CustomViewDialog();
//Create dialog
customViewDialog.Builder(context);
//Set title
customViewDialog.setTitle("Thêm địa chỉ");
//Create dialog width two buttons
customViewDialog.dialogWithTwoButtons();
//Add custom view
customViewDialog.addCustomView(view);
//Set left button text
customViewDialog.setLeftButtonText("Thêm");
//Set right button text
customViewDialog.setRightButtonText("Trở về");
//Set color for left button
// customViewDialog.setLeftButtonColor(getResources().getColor(R.color.primaryColor, null));
// //Set color for right button
// customViewDialog.setRightButtonColor(getResources().getColor(R.color.gray, null));
//Set event button
customViewDialog.onButtonClick(new DialogButtonEvents() {
@Override
public void onLeftButtonClick() {
//Get data
// address = edt_address.getText().toString();
// ward = wardSpinner.getSelectedItem().toString();
// district = districtSpinner.getSelectedItem().toString();
//
// if(validData(address, ward, district)){
// addAddress(address, ward, district);
// customViewDialog.dismiss();
// }
}
@Override
public void onRightButtonClick() {
customViewDialog.dismiss();
}
});
customViewDialog.show();
}
public class AddressViewHolder extends RecyclerView.ViewHolder{
private TextView text_view_address, default_text_view, blank_text_view;