中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

如何在Android datagrid中添加刪除功能

小樊
82
2024-09-07 22:14:02
欄目: 編程語言

在 Android 中,沒有名為 DataGrid 的組件

  1. 首先,在布局文件(例如:activity_main.xml)中添加 RecyclerView。
    android:id="@+id/recyclerView"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" />
  1. 創建一個 RecyclerView 適配器,用于顯示數據和處理刪除操作。
public class MyAdapter extends RecyclerView.Adapter<MyAdapter.ViewHolder> {
    private List<String> dataList;

    public MyAdapter(List<String> dataList) {
        this.dataList = dataList;
    }

    @NonNull
    @Override
    public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
        View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_layout, parent, false);
        return new ViewHolder(view);
    }

    @Override
    public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
        holder.textView.setText(dataList.get(position));
        holder.deleteButton.setOnClickListener(v -> {
            // 刪除數據
            dataList.remove(position);
            // 通知適配器更新數據
            notifyItemRemoved(position);
        });
    }

    @Override
    public int getItemCount() {
        return dataList.size();
    }

    static class ViewHolder extends RecyclerView.ViewHolder {
        TextView textView;
        Button deleteButton;

        public ViewHolder(@NonNull View itemView) {
            super(itemView);
            textView = itemView.findViewById(R.id.textView);
            deleteButton = itemView.findViewById(R.id.deleteButton);
        }
    }
}
  1. 在 RecyclerView 的每個項目的布局文件(例如:item_layout.xml)中添加一個 TextView 和一個 Button。
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal">

   <TextView
        android:id="@+id/textView"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1" />

   <Button
        android:id="@+id/deleteButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Delete" />

</LinearLayout>
  1. 在 Activity 或 Fragment 中設置 RecyclerView 的適配器并提供數據。
public class MainActivity extends AppCompatActivity {
    private RecyclerView recyclerView;
    private MyAdapter adapter;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        recyclerView = findViewById(R.id.recyclerView);
        recyclerView.setLayoutManager(new LinearLayoutManager(this));

        List<String> dataList = new ArrayList<>();
        for (int i = 1; i <= 20; i++) {
            dataList.add("Item " + i);
        }

        adapter = new MyAdapter(dataList);
        recyclerView.setAdapter(adapter);
    }
}

現在,當您點擊“Delete”按鈕時,應用程序將從列表中刪除相應的項目。

0
东兰县| 梨树县| 建始县| 呼玛县| 衢州市| 淮滨县| 晋中市| 长乐市| 沧州市| 武功县| 赣州市| 平谷区| 湖南省| 贞丰县| 泊头市| 潼南县| 连城县| 广水市| 武威市| 临桂县| 西和县| 北宁市| 句容市| 泰和县| 如东县| 平潭县| 凤台县| 顺平县| 吴旗县| 隆安县| 南乐县| 尚义县| 攀枝花市| 庆云县| 武川县| 斗六市| 聂荣县| 泰和县| 绥德县| 南京市| 梁平县|