使用RecyclerView和Android Studio中的一个按钮将项目添加到列表中,然后删除它们的步骤如下:
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recyclerView"
android:layout_width="match_parent"
android:layout_height="match_parent" />
public class Project {
private String name;
// 其他相关信息的定义
public Project(String name) {
this.name = name;
}
public String getName() {
return name;
}
// 其他相关方法的定义
}
public class ProjectAdapter extends RecyclerView.Adapter<ProjectAdapter.ViewHolder> {
private List<Project> projectList;
public ProjectAdapter(List<Project> projectList) {
this.projectList = projectList;
}
@NonNull
@Override
public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_project, parent, false);
return new ViewHolder(view);
}
@Override
public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
Project project = projectList.get(position);
holder.projectNameTextView.setText(project.getName());
}
@Override
public int getItemCount() {
return projectList.size();
}
public class ViewHolder extends RecyclerView.ViewHolder {
public TextView projectNameTextView;
public ViewHolder(@NonNull View itemView) {
super(itemView);
projectNameTextView = itemView.findViewById(R.id.projectNameTextView);
}
}
}
<TextView
android:id="@+id/projectNameTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
public class MainActivity extends AppCompatActivity {
private List<Project> projectList;
private ProjectAdapter projectAdapter;
private RecyclerView recyclerView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
recyclerView = findViewById(R.id.recyclerView);
projectList = new ArrayList<>();
projectAdapter = new ProjectAdapter(projectList);
RecyclerView.LayoutManager layoutManager = new LinearLayoutManager(this);
recyclerView.setLayoutManager(layoutManager);
recyclerView.setAdapter(projectAdapter);
}
// 在这里添加一个按钮的点击事件,用于添加项目到列表中
public void addButtonClicked(View view) {
// 获取项目名称
EditText projectNameEditText = findViewById(R.id.projectNameEditText);
String projectName = projectNameEditText.getText().toString();
// 创建一个新的项目对象
Project project = new Project(projectName);
// 将项目添加到列表中
projectList.add(project);
// 通知适配器数据发生变化
projectAdapter.notifyDataSetChanged();
}
// 在这里添加一个按钮的点击事件,用于删除选中的项目
public void deleteButtonClicked(View view) {
// 获取选中的项目位置
int position = recyclerView.getChildLayoutPosition(view);
// 从列表中删除选中的项目
projectList.remove(position);
// 通知适配器数据发生变化
projectAdapter.notifyDataSetChanged();
}
}
<EditText
android:id="@+id/projectNameEditText"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<Button
android:id="@+id/addButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Add"
android:onClick="addButtonClicked" />
<Button
android:id="@+id/deleteButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Delete"
android:onClick="deleteButtonClicked" />
现在,当点击"Add"按钮时,将会将输入的项目名称添加到RecyclerView的列表中。当点击列表中的某个项目后的"Delete"按钮时,将会删除选中的项目。
请注意,以上代码仅为示例,实际开发中可能需要根据具体需求进行适当修改和完善。
领取专属 10元无门槛券
手把手带您无忧上云