بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
نمایش قیمت نهایی سبد خرید!
سلام.من یک ریسایکرویو دارم ک لیست محصولات مورد نظر رو با قیمت پایه نشون میده و کاربر تعداد مورد نظرش رو وارد میکنه و قیمت هر محصول با توجه به تعدادش محاسبه میشه.حالا چطور میتونم این مقادیرو باهم جمع کنم و نمایش بدم...ممنون
آداپتر
package navosh.shaidi.radstore.adapter;
import android.annotation.SuppressLint;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import com.makeramen.roundedimageview.RoundedImageView;
import com.squareup.picasso.Picasso;
import java.util.List;
import navosh.shaidi.radstore.R;
import navosh.shaidi.radstore.api.ApiService;
import navosh.shaidi.radstore.model.CartModel;
public class AdapterCart extends RecyclerView.Adapter<AdapterCart.cViewHolder> {
private Context context;
private List<CartModel> cartModels;
public AdapterCart(Context context, List<CartModel> cartModels) {
this.context = context;
this.cartModels = cartModels;
}
@NonNull
@Override
public cViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View v = LayoutInflater.from(context).inflate(R.layout.item_cart, parent, false);
return new cViewHolder(v);
}
@SuppressLint("SetTextI18n")
@Override
public void onBindViewHolder(@NonNull final cViewHolder holder, final int position) {
final CartModel cartModel = cartModels.get(position);
final String id = cartModel.getId();
final String name_product = cartModel.getName_product();
final String price_product = cartModel.getPrice_product();
final String image_product = cartModel.getImage_product();
Picasso.with(context).load(image_product).into(holder.img_cart);
holder.txt_name_cart.setText(name_product);
holder.txt_price_cart.setText(price_product);
holder.txt_final_price_cart.setText(price_product +" تومان");
holder.img_inc.setOnClickListener(new View.OnClickListener() {
@SuppressLint("SetTextI18n")
@Override
public void onClick(View view) {
int current_count = Integer.parseInt(holder.txt_count_item.getText().toString());
holder.txt_count_item.setText(current_count + 1 +"");
int count =Integer.parseInt(holder.txt_count_item.getText().toString());
int price1 = Integer.parseInt(holder.txt_price_cart.getText().toString());
holder.txt_final_price_cart.setText( price1 * count +" تومان");
}
});
holder.img_dec.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
int count = Integer.parseInt(holder.txt_count_item.getText().toString());
if (count>1){
holder.txt_count_item.setText(count - 1 +"");
int price1 = Integer.parseInt(holder.txt_price_cart.getText().toString());
holder.txt_final_price_cart.setText(price1 * Integer.parseInt(holder.txt_count_item.getText().toString() )+" تومان");
}
}
});
holder.txt_remove.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
myCallBackCart.onItemClicked(id);
cartModels.remove(position);
notifyItemRemoved(position);
notifyItemRangeRemoved(position, cartModels.size());
}
});
}
private MyCallBackCart myCallBackCart;
public void setId_cart(MyCallBackCart myCallBackCart) {
this.myCallBackCart = myCallBackCart;
}
public interface MyCallBackCart {
void onItemClicked(String id);
}
@Override
public int getItemCount() {
return cartModels.size();
}
public class cViewHolder extends RecyclerView.ViewHolder {
TextView txt_name_cart, txt_price_cart, txt_remove ,txt_count_item,txt_final_price_cart;
RoundedImageView img_cart;
ImageView img_inc,img_dec;
public cViewHolder(@NonNull View itemView) {
super(itemView);
txt_name_cart = itemView.findViewById(R.id.txt_name_cart);
txt_price_cart = itemView.findViewById(R.id.txt_price_cart);
img_cart = itemView.findViewById(R.id.img_main_cart);
txt_remove = itemView.findViewById(R.id.txt_remove);
txt_count_item = itemView.findViewById(R.id.txt_count_item);
img_inc = itemView.findViewById(R.id.img_inc);
img_dec = itemView.findViewById(R.id.img_dec);
txt_final_price_cart = itemView.findViewById(R.id.txt_final_price_cart);
}
}
}
اکتیویتی
package navosh.shaidi.radstore.activity;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.Toolbar;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;
import java.util.ArrayList;
import java.util.List;
import navosh.shaidi.radstore.MyClass.MyDatabaseHelper;
import navosh.shaidi.radstore.R;
import navosh.shaidi.radstore.adapter.AdapterCart;
import navosh.shaidi.radstore.adapter.AdapterProductPorforosh;
import navosh.shaidi.radstore.api.ApiClient;
import navosh.shaidi.radstore.api.ApiService;
import navosh.shaidi.radstore.model.CartModel;
import navosh.shaidi.radstore.model.K;
import navosh.shaidi.radstore.model.ProductModel;
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
public class Cart extends AppCompatActivity {
ApiService apiService;
RecyclerView recyclerView;
AdapterCart adapterCart;
SharedPreferences sharedPreferences;
String user_phone;
TextView txt_nothing;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_cart);
sharedPreferences = getSharedPreferences(K.SHARE,MODE_PRIVATE);
user_phone = sharedPreferences.getString(K.USERNAME,"ورود/عضویت");
recyclerView = findViewById(R.id.recy_cart);
txt_nothing = findViewById(R.id.txt_nothing);
getCartList();
}
private void getCartList() {
apiService = ApiClient.getRetrofit().create(ApiService.class);
Call<List<CartModel>> call = apiService.getCartList(user_phone);
call.enqueue(new Callback<List<CartModel>>() {
@Override
public void onResponse(Call<List<CartModel>> call, Response<List<CartModel>> response) {
RecyclerView.LayoutManager manager = new LinearLayoutManager(getApplicationContext(), LinearLayoutManager.VERTICAL, false);
adapterCart = new AdapterCart(getApplicationContext(),response.body());
recyclerView.setLayoutManager(manager);
recyclerView.setAdapter(adapterCart);
adapterCart.setId_cart(new AdapterCart.MyCallBackCart() {
@Override
public void onItemClicked(String id) {
Call<CartModel> call1 = apiService.deletFromCart(id);
call1.enqueue(new Callback<CartModel>() {
@Override
public void onResponse(Call<CartModel> call, Response<CartModel> response) {
Toast.makeText(Cart.this, response.body().toString(), Toast.LENGTH_SHORT).show();
}
@Override
public void onFailure(Call<CartModel> call, Throwable t) {
}
});
}
});
if (response.body().isEmpty()){
txt_nothing.setVisibility(View.VISIBLE);
}else {
txt_nothing.setVisibility(View.GONE);
}
}
@Override
public void onFailure(Call<List<CartModel>> call, Throwable t) {
}
});
}
}
برای این سوال پاسخی وجود ندارد.
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .