Skip to content
Snippets Groups Projects
Commit 5e8590fc authored by Enzo Lamour's avatar Enzo Lamour
Browse files

Q4

parent 401a7860
Branches
Tags
No related merge requests found
......@@ -6,28 +6,31 @@ import androidx.recyclerview.widget.DividerItemDecoration;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.annotation.SuppressLint;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.ContextMenu;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
import android.widget.Button;
import java.util.ArrayList;
import java.util.List;
import fr.iutlille.ctp_2025.databinding.ActivityMainBinding;
import fr.iutlille.tp4.OperationAdapter;
public class MainActivity extends AppCompatActivity {
public class ParticipantAdapter extends RecyclerView.Adapter<ParticipantViewHolder> {
private List<Participant> participantsList;
ParticipantAdapter(){}
public ParticipantAdapter(List<Participant> participants) {
this.participantsList = participants;
}
@NonNull
@Override
public ParticipantViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
......@@ -41,11 +44,12 @@ public class MainActivity extends AppCompatActivity {
Participant participant = model.getParticipant(position);
holder.text1.setText(participant.getName());
holder.text2.setText(participant.getName());
}
@Override
public int getItemCount() {
return 0;
return model.getNbParticipants();
}
}
public class ParticipantViewHolder extends RecyclerView.ViewHolder {
......@@ -77,14 +81,28 @@ public class MainActivity extends AppCompatActivity {
ui.SumRestauration.setText(model.getSumOperations("RESTAURATION") +"");
ui.SumLoisirs.setText(model.getSumOperations("LOISIRS") +"");
ui.SumTransport.setText(model.getSumOperations("TRANSPORT") +"");
List<Participant> participantsList= new ArrayList<>();
for(int i = 0; i < model.getNbParticipants(); i++){
participantsList.add(model.getParticipant(i));
}
ui.ParticipantList.setAdapter(new ParticipantAdapter(participantsList));
Button btnParticipant =findViewById(R.id.add_participant);
btnParticipant.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
EditText et = findViewById(R.id.new_participant);
try {
model.addParticipant(et.getText().toString());
} catch (ModelApplication.ApplicationErrorException e) {
throw new RuntimeException(e);
}
}
});
refresh();
}
private void refresh() {
model.computeBalance();
ui.ParticipantList.getAdapter().notifyDataSetChanged();
}
public int getItemCount() {
return model.getNbParticipants();
}
}
\ No newline at end of file
package fr.iutlille.tp4;
import android.annotation.SuppressLint;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import java.util.List;
import fr.iutlille.ctp_2025.ModelApplication;
import fr.iutlille.ctp_2025.Operation;
import fr.iutlille.ctp_2025.R;
public class OperationAdapter extends RecyclerView.Adapter<OperationAdapter.OperationHolder> {
private List<Operation> operationsList;
private ModelApplication md = new ModelApplication();
public OperationAdapter(List<Operation> operationsList) {
this.operationsList = operationsList;
}
@NonNull
@Override
public OperationHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View itemView = LayoutInflater.from(parent.getContext())
.inflate(R.layout.activity_main, parent, false);
return new OperationHolder(itemView);
}
@SuppressLint("SetTextI18n")
@Override
public void onBindViewHolder(@NonNull OperationHolder holder, int position) {
Operation op = operationsList.get(position);
holder.SumTransport.setText(md.getSumOperations("Transport") +"");
holder.SumHebergement.setText(md.getSumOperations("Hebergement") +"");
holder.SumRestauration.setText(md.getSumOperations("Restauration") +"");
holder.SumLoisirs.setText(md.getSumOperations("Loisirs") +"");
holder.SumAutres.setText(md.getSumOperations("Autres") +"");
}
@Override
public int getItemCount() {
return operationsList.size();
}
// ViewHolder qui contient les vues pour chaque item
public class OperationHolder extends RecyclerView.ViewHolder {
public TextView SumTransport;
public TextView SumHebergement;
public TextView SumRestauration;
public TextView SumLoisirs;
public TextView SumAutres;
public OperationHolder(View view) {
super(view);
SumTransport = view.findViewById(R.id.SumTransport);
SumHebergement = view.findViewById(R.id.SumHebergement);
SumRestauration = view.findViewById(R.id.SumRestauration);
SumLoisirs = view.findViewById(R.id.SumLoisirs);
SumAutres = view.findViewById(R.id.SumAutres);
}
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment