Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.kusoft.accessoriespc;
- import androidx.appcompat.app.AppCompatActivity;
- import androidx.recyclerview.widget.LinearLayoutManager;
- import androidx.recyclerview.widget.RecyclerView;
- import android.content.Intent;
- import android.os.Bundle;
- import android.view.Menu;
- import android.view.MenuItem;
- import android.widget.Toast;
- import com.kusoft.accessoriespc.Adapter.ListAccessoriesAdapter;
- import java.util.ArrayList;
- public class MainActivity extends AppCompatActivity {
- private RecyclerView rvAccessories;
- private ArrayList<Accessories> list = new ArrayList<>();
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- rvAccessories = findViewById(R.id.rv_accessories);
- rvAccessories.setHasFixedSize(true);
- list.addAll(AccessoriesData.getListData());
- showRecyclerList();
- }
- private void showRecyclerList() {
- rvAccessories.setLayoutManager(new LinearLayoutManager(this));
- ListAccessoriesAdapter listAccessoriesAdapter = new ListAccessoriesAdapter(list);
- rvAccessories.setAdapter(listAccessoriesAdapter);
- ListAccessoriesAdapter.setOnItemClickCallback(new ListAccessoriesAdapter.OnItemClickCallback() {
- @Override
- public void onItemClicked(Accessories data) {
- showSelectedAcc(data);
- }
- });
- }
- @Override
- public boolean onCreateOptionsMenu(Menu menu) {
- getMenuInflater().inflate(R.menu.menu_main, menu);
- return super.onCreateOptionsMenu(menu);
- }
- @Override
- public boolean onOptionsItemSelected(MenuItem item) {
- setMode(item.getItemId());
- return super.onOptionsItemSelected(item);
- }
- private void showSelectedAcc(Accessories accessories) {
- Toast.makeText(this, "Anda telah memilih " + accessories.getName(), Toast.LENGTH_SHORT).show();
- Intent ambil = new Intent(MainActivity.this, Detail.class);
- ambil.putExtra("name", accessories.getName());
- ambil.putExtra("photo", accessories.getPhoto());
- ambil.putExtra("form", accessories.getForm());
- startActivity(ambil);
- }
- private void showRecyclerAbout(About about) {
- Toast.makeText(this, "Kamu memilih " + about.getName(), Toast.LENGTH_SHORT).show();
- Intent ambil = new Intent(MainActivity.this, About.class);
- startActivity(ambil);
- }
- public void setMode(int selectedMode) {
- switch (selectedMode) {
- case R.id.action_about:
- break;
- if (selectedMode == R.id.action_about) {
- Intent aboutIntent = new Intent(MainActivity.this, About.class);
- startActivity(aboutIntent);
- }
- }
- }
- }
- package com.kusoft.accessoriespc.Adapter;
- import android.view.LayoutInflater;
- import android.view.View;
- import android.view.ViewGroup;
- import android.widget.ImageView;
- import android.widget.TextView;
- import androidx.annotation.NonNull;
- import androidx.recyclerview.widget.RecyclerView;
- import com.bumptech.glide.Glide;
- import com.bumptech.glide.request.RequestOptions;
- import com.kusoft.accessoriespc.Accessories;
- import com.kusoft.accessoriespc.R;
- import java.util.ArrayList;
- public class ListAccessoriesAdapter extends RecyclerView.Adapter<ListAccessoriesAdapter.ListViewHolder> {
- private ArrayList<Accessories> listAccessories;
- private OnItemClickCallback onItemClickCallback;
- public ListAccessoriesAdapter(ArrayList<Accessories> list) {
- this.listAccessories = list;
- }
- public void setOnItemClickCallback(OnItemClickCallback onItemClickCallback) {
- this.onItemClickCallback = onItemClickCallback;
- }
- @NonNull
- @Override
- public ListAccessoriesAdapter.ListViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int viewType) {
- View view = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.item_row_accessories, viewGroup, false);
- return new ListViewHolder(view);
- }
- @Override
- public void onBindViewHolder(@NonNull final ListViewHolder holder, int position) {
- Accessories accessories = listAccessories.get(position);
- Glide.with(holder.itemView.getContext())
- .load(accessories.getPhoto())
- .apply(new RequestOptions().override(55, 55))
- .into(holder.imgPhoto);
- holder.tvName.setText(accessories.getName());
- holder.tvForm.setText(accessories.getForm());
- holder.itemView.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- onItemClickCallback.onItemClicked(listAccessories.get(holder.getAdapterPosition()));
- }
- });
- }
- @Override
- public int getItemCount() {
- return listAccessories.size();
- }
- public interface OnItemClickCallback {
- void onItemClicked(Accessories data);
- }
- public class ListViewHolder extends RecyclerView.ViewHolder {
- ImageView imgPhoto;
- TextView tvName, tvForm;
- public ListViewHolder(@NonNull View itemView) {
- super(itemView);
- imgPhoto = itemView.findViewById(R.id.img_item_photo);
- tvName = itemView.findViewById(R.id.tv_item_name);
- tvForm = itemView.findViewById(R.id.tv_item_form);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement