如何在android studio中单击按钮时从LinearLayout添加和删除CardView?

杰维卡·迪隆

我有一个包含 cardView 的线性布局。我想在按钮点击时动态添加和删除 cardViews。我已经尝试了以下代码,但删除按钮不起作用,而且在添加新视图后,动态添加的视图更改本身的填充如下图所示。图片

体验信息活动.java

package kbg.com.kbgpos.forms;
import android.app.DatePickerDialog;
import android.content.Context;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.CardView;
import android.support.v7.widget.Toolbar;
import android.text.format.Time;
import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;
import android.widget.DatePicker;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.LinearLayout;

import kbg.com.kbgpos.R;

public class ExperienceInfoActivity extends AppCompatActivity {
    Toolbar toolbar;
    private LinearLayout parentRelativeLayout;
    private View v;
    EditText fromDateEditText,toDateEditText;
    private ViewGroup.LayoutParams params;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_experience_info);
        initViews();
        initListeners();
    }


    private void initViews() {
        toolbar=(Toolbar) findViewById(R.id.toolbarExperienceInfoActivity);
        toolbar.setTitle("Employee Experience Info");
        toolbar.setTitleTextColor(getResources().getColor(R.color.toolBarTitle));
        toolbar.setNavigationIcon(getResources().getDrawable(R.drawable.ic_arrow_back_black_24dp));
        setSupportActionBar(toolbar);

        parentRelativeLayout = (LinearLayout) findViewById(R.id.experienceDetailsInfoRelLayout);
        CardView experienceInfoActivityFormCardVw = findViewById(R.id.experienceInfoActivityFormCardVw);
        ImageView delRowBtn = findViewById(R.id.delRowBtn);
        delRowBtn.setTag(experienceInfoActivityFormCardVw);
        params = experienceInfoActivityFormCardVw.getLayoutParams();
        fromDateEditText=(EditText)findViewById(R.id.fromDateEditText);
        toDateEditText=(EditText)findViewById(R.id.toDateEditText);
    }

    private void initListeners() {
        fromDateEditText.setOnTouchListener(new View.OnTouchListener() {
            @Override
            public boolean onTouch(View v, MotionEvent event) {
                if(event.getAction() == MotionEvent.ACTION_UP) {
                    if(event.getRawX() >= fromDateEditText.getRight() - fromDateEditText.getTotalPaddingRight()) {
                        DatePickerDialog.OnDateSetListener dpd = new DatePickerDialog.OnDateSetListener() {
                            @Override
                            public void onDateSet(DatePicker view, int year, int monthOfYear,
                                                  int dayOfMonth) {

                                int s=monthOfYear+1;
                                String a = dayOfMonth+"/"+s+"/"+year;
                                fromDateEditText.setText(""+a);
                            }
                        };

                        Time date = new Time();
                        DatePickerDialog d = new DatePickerDialog(ExperienceInfoActivity.this, dpd, date.year ,date.month, date.monthDay);
                        d.show();

                        return true;
                    }
                }
                return true;
            }
        });

        toDateEditText.setOnTouchListener(new View.OnTouchListener() {
            @Override
            public boolean onTouch(View v, MotionEvent event) {
                if(event.getAction() == MotionEvent.ACTION_UP) {
                    if(event.getRawX() >= toDateEditText.getRight() - toDateEditText.getTotalPaddingRight()) {
                        DatePickerDialog.OnDateSetListener dpd = new DatePickerDialog.OnDateSetListener() {
                            @Override
                            public void onDateSet(DatePicker view, int year, int monthOfYear,
                                                  int dayOfMonth) {

                                int s=monthOfYear+1;
                                String a = dayOfMonth+"/"+s+"/"+year;
                                toDateEditText.setText(""+a);
                            }
                        };

                        Time date = new Time();
                        DatePickerDialog d = new DatePickerDialog(ExperienceInfoActivity.this, dpd, date.year ,date.month, date.monthDay);
                        d.show();

                        return true;
                    }
                }
                return true;
            }
        });
    }

    public void onAddField(View view) {
        try{

            LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            final View rowView = inflater.inflate(R.layout.experience_details_row, null);
            if(parentRelativeLayout.getChildCount()>1){
                ViewGroup parent = (ViewGroup) view.getParent();
                parent.removeView(view);
            }
            ImageView delRowBtn = rowView.findViewById(R.id.delRowBtn);
            delRowBtn.setTag(rowView);
            rowView.setLayoutParams(params);
            parentRelativeLayout.addView(rowView, parentRelativeLayout.getChildCount());
            EditText employerNameEditText = rowView.findViewById(R.id.employerNameEditText);
            employerNameEditText.requestFocus();
        }catch (Exception e){
            e.printStackTrace();
        }
    }
    public void onDelete(View v) {
        try{
            if(parentRelativeLayout.getChildCount()>2) {
                CardView cv = (CardView) ((ImageView) v).getTag();
                parentRelativeLayout.removeView(cv);
            }else{
                ViewGroup parent = (ViewGroup) v.getParent();
                v.setBackgroundColor(getResources().getColor(R.color.material_grey_50));
            }
        }catch (Exception e){
            e.printStackTrace();
        }
    }

}

Experience_details_row.xml

<?xml version="1.0" encoding="utf-8"?>
    <android.support.v7.widget.CardView
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:card_view="http://schemas.android.com/apk/res-auto"
        android:id="@+id/experienceInfoActivityFormCardVw"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="5dp"
        android:layout_marginRight="5dp"
        android:layout_marginBottom="5dp"
        android:layout_marginTop="5dp"
        card_view:cardElevation="2dp"
        card_view:contentPadding="5dp"
        card_view:cardCornerRadius="2dp">

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <android.support.design.widget.TextInputLayout
                android:id="@+id/employerNameTextInputLayout"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                app:hintTextAppearance="@style/text_in_layout_hint_Style"
                app:errorTextAppearance="@style/text_in_layout_error_hint_Style">
                <EditText
                    android:id="@+id/employerNameEditText"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:ems="10"
                    android:textSize="12sp"
                    android:inputType="textPersonName"
                    android:hint="Employer Name" />
            </android.support.design.widget.TextInputLayout>

            <android.support.design.widget.TextInputLayout
                android:id="@+id/designationTextInputLayout"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="10dp"
                app:hintTextAppearance="@style/text_in_layout_hint_Style"
                app:errorTextAppearance="@style/text_in_layout_error_hint_Style"
                android:layout_below="@id/employerNameTextInputLayout">
                <EditText
                    android:id="@+id/designationEditText"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:ems="10"
                    android:textSize="12sp"
                    android:inputType="textPersonName"
                    android:hint="Designation" />
            </android.support.design.widget.TextInputLayout>

            <android.support.design.widget.TextInputLayout
                android:id="@+id/addressTextInputLayout"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="10dp"
                app:hintTextAppearance="@style/text_in_layout_hint_Style"
                app:errorTextAppearance="@style/text_in_layout_error_hint_Style"
                android:layout_below="@id/designationTextInputLayout">
                <EditText
                    android:id="@+id/addressEditText"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:ems="10"
                    android:textSize="12sp"
                    android:inputType="textPersonName"
                    android:hint="Address" />
            </android.support.design.widget.TextInputLayout>

            <android.support.design.widget.TextInputLayout
                android:id="@+id/fromDateTextInputLayout"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="10dp"
                app:hintTextAppearance="@style/text_in_layout_hint_Style"
                app:errorTextAppearance="@style/text_in_layout_error_hint_Style"
                android:layout_below="@id/addressTextInputLayout">
                <EditText
                    android:id="@+id/fromDateEditText"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:textSize="12sp"
                    android:inputType="date"
                    android:drawableRight="@drawable/ic_perm_contact_calendar_black_24dp"
                    android:drawableTint="@android:color/holo_orange_light"
                    android:hint="From Date" />
            </android.support.design.widget.TextInputLayout>

            <android.support.design.widget.TextInputLayout
                android:id="@+id/toDateTextInputLayout"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="10dp"
                app:hintTextAppearance="@style/text_in_layout_hint_Style"
                app:errorTextAppearance="@style/text_in_layout_error_hint_Style"
                android:layout_below="@id/fromDateTextInputLayout">
                <EditText
                    android:id="@+id/toDateEditText"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:textSize="12sp"
                    android:inputType="date"
                    android:hint="To Date"
                    android:drawableRight="@drawable/ic_perm_contact_calendar_black_24dp"
                    android:drawableTint="@android:color/holo_orange_light"/>
            </android.support.design.widget.TextInputLayout>
            <LinearLayout
                android:id="@+id/addDelLayout"
                android:layout_marginTop="5dp"
                android:padding="5dp"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:gravity="left"
                android:orientation="horizontal"
                android:layout_below="@id/toDateTextInputLayout">
                <ImageView
                    android:id="@+id/addRowBtn"
                    android:src="@drawable/ic_add_box_black_24dp"
                    android:layout_width="40dp"
                    android:layout_height="30dp"
                    android:onClick="onAddField"
                    android:background="@android:color/holo_green_light"
                    android:layout_marginRight="30dp"/>
                <ImageView
                    android:id="@+id/delRowBtn"
                    android:src="@drawable/ic_delete_black_24dp"
                    android:background="@android:color/holo_red_dark"
                    android:layout_width="40dp"
                    android:layout_height="30dp"
                    android:onClick="onDelete"/>
            </LinearLayout>
        </RelativeLayout>
    </android.support.v7.widget.CardView>

activity_experience_info.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:card_view="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".forms.ExperienceInfoActivity">

    <include
        android:layout_height="wrap_content"
        android:layout_width="match_parent"
        layout="@layout/toolbar_layout"
        android:id="@+id/toolbarExperienceInfoActivity"></include>

    <ScrollView
        android:id="@+id/personalDetailScroll"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:fillViewport="true"
        android:layout_marginBottom="55dp"
        android:scrollbars = "vertical"
        android:layout_below="@id/toolbarExperienceInfoActivity">

        <LinearLayout
            android:id="@+id/experienceDetailsInfoRelLayout"
            android:padding="5dp"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical">
        <android.support.v7.widget.CardView
            android:id="@+id/experienceInfoActivityFormHeadingCardVw"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="5dp"
            android:layout_marginRight="5dp"
            android:layout_marginBottom="5dp"
            android:layout_marginTop="10dp"
            card_view:cardElevation="2dp"
            card_view:contentPadding="5dp"
            card_view:cardCornerRadius="2dp"
            app:cardBackgroundColor="@android:color/holo_orange_light">
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Experience Details"
                android:textStyle="bold"
                android:textColor="@android:color/white"
                android:layout_gravity="center"/>
        </android.support.v7.widget.CardView>
            <android.support.v7.widget.CardView
                android:id="@+id/experienceInfoActivityFormCardVw"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginLeft="5dp"
                android:layout_marginRight="5dp"
                android:layout_marginBottom="5dp"
                android:layout_marginTop="5dp"
                card_view:cardElevation="2dp"
                card_view:contentPadding="5dp"
                card_view:cardCornerRadius="2dp">

                <RelativeLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content">

                    <android.support.design.widget.TextInputLayout
                        android:id="@+id/employerNameTextInputLayout"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        app:hintTextAppearance="@style/text_in_layout_hint_Style"
                        app:errorTextAppearance="@style/text_in_layout_error_hint_Style">
                        <EditText
                            android:id="@+id/employerNameEditText"
                            android:layout_width="match_parent"
                            android:layout_height="match_parent"
                            android:ems="10"
                            android:textSize="12sp"
                            android:inputType="textPersonName"
                            android:hint="Employer Name" />
                    </android.support.design.widget.TextInputLayout>

                    <android.support.design.widget.TextInputLayout
                        android:id="@+id/designationTextInputLayout"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:layout_marginTop="10dp"
                        app:hintTextAppearance="@style/text_in_layout_hint_Style"
                        app:errorTextAppearance="@style/text_in_layout_error_hint_Style"
                        android:layout_below="@id/employerNameTextInputLayout">
                        <EditText
                            android:id="@+id/designationEditText"
                            android:layout_width="match_parent"
                            android:layout_height="match_parent"
                            android:ems="10"
                            android:textSize="12sp"
                            android:inputType="textPersonName"
                            android:hint="Designation" />
                    </android.support.design.widget.TextInputLayout>

                    <android.support.design.widget.TextInputLayout
                        android:id="@+id/addressTextInputLayout"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:layout_marginTop="10dp"
                        app:hintTextAppearance="@style/text_in_layout_hint_Style"
                        app:errorTextAppearance="@style/text_in_layout_error_hint_Style"
                        android:layout_below="@id/designationTextInputLayout">
                        <EditText
                            android:id="@+id/addressEditText"
                            android:layout_width="match_parent"
                            android:layout_height="match_parent"
                            android:ems="10"
                            android:textSize="12sp"
                            android:inputType="textPersonName"
                            android:hint="Address" />
                    </android.support.design.widget.TextInputLayout>

                    <android.support.design.widget.TextInputLayout
                        android:id="@+id/fromDateTextInputLayout"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:layout_marginTop="10dp"
                        app:hintTextAppearance="@style/text_in_layout_hint_Style"
                        app:errorTextAppearance="@style/text_in_layout_error_hint_Style"
                        android:layout_below="@id/addressTextInputLayout">
                        <EditText
                            android:id="@+id/fromDateEditText"
                            android:layout_width="match_parent"
                            android:layout_height="match_parent"
                            android:textSize="12sp"
                            android:inputType="date"
                            android:drawableRight="@drawable/ic_perm_contact_calendar_black_24dp"
                            android:drawableTint="@android:color/holo_orange_light"
                            android:hint="From Date" />
                    </android.support.design.widget.TextInputLayout>

                    <android.support.design.widget.TextInputLayout
                        android:id="@+id/toDateTextInputLayout"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:layout_marginTop="10dp"
                        app:hintTextAppearance="@style/text_in_layout_hint_Style"
                        app:errorTextAppearance="@style/text_in_layout_error_hint_Style"
                        android:layout_below="@id/fromDateTextInputLayout">
                        <EditText
                            android:id="@+id/toDateEditText"
                            android:layout_width="match_parent"
                            android:layout_height="match_parent"
                            android:textSize="12sp"
                            android:inputType="date"
                            android:hint="To Date"
                            android:drawableRight="@drawable/ic_perm_contact_calendar_black_24dp"
                            android:drawableTint="@android:color/holo_orange_light"/>
                    </android.support.design.widget.TextInputLayout>
                    <LinearLayout
                        android:id="@+id/addDelLayout"
                        android:layout_marginTop="5dp"
                        android:padding="5dp"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:gravity="left"
                        android:orientation="horizontal"
                        android:layout_below="@id/toDateTextInputLayout">
                        <ImageView
                            android:id="@+id/addRowBtn"
                            android:src="@drawable/ic_add_box_black_24dp"
                            android:layout_width="40dp"
                            android:layout_height="30dp"
                            android:onClick="onAddField"
                            android:background="@android:color/holo_green_light"
                            android:layout_marginRight="30dp"/>
                        <ImageView
                            android:id="@+id/delRowBtn"
                            android:src="@drawable/ic_delete_black_24dp"
                            android:background="@android:color/holo_red_dark"
                            android:layout_width="40dp"
                            android:layout_height="30dp"
                            android:onClick="onDelete"/>
                    </LinearLayout>
                </RelativeLayout>
            </android.support.v7.widget.CardView>
        </LinearLayout>

    </ScrollView>

    <LinearLayout
        android:layout_alignParentBottom="true"
        android:elevation="4dp"
        android:layout_width="match_parent"
        android:layout_height="55dp"
        android:padding="5dp"
        android:weightSum="2"
        android:orientation="horizontal"
        android:gravity="center">

        <Button
            android:id="@+id/cancelBtn"
            android:layout_width="0dp"
            android:layout_weight="1"
            android:layout_height="45dp"
            android:text="CANCEL"
            android:background="#e0e0e0"
            android:textStyle="bold"
            android:textColor="@android:color/white"/>
        <Button
            android:id="@+id/saveBtn"
            android:layout_width="0dp"
            android:layout_weight="1"
            android:layout_height="45dp"
            android:text="SUBMIT"
            android:background="#ffe57f"
            android:textStyle="bold"
            android:textColor="@android:color/white"/>
    </LinearLayout>
</RelativeLayout>
用户8959091

参数vinonDelete(View v)不是CardView您要删除的参数。就是你点击
ImageView那个。
onAddField()做到这一点:

LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
final View rowView = inflater.inflate(R.layout.experience_details_row, null);
ImageView delRowBtn = rowView.findViewById(R.id.delRowBtn);
delRowBtn.setTag(rowView);
parentRelativeLayout.addView(rowView, parentRelativeLayout.getChildCount());

上面的代码所做的是将新CardView对象存储delRowBtn的标签中。
我也删除-1parentRelativeLayout.getChildCount()在末尾添加新CardView。
但是上面的逻辑也必须应用于CardView已经存在的第一个,所以onCreate()添加这个:

CardView experienceInfoActivityFormCardVw = findViewById(R.id.experienceInfoActivityFormCardVw);
ImageView delRowBtn = findViewById(R.id.delRowBtn);
delRowBtn.setTag(experienceInfoActivityFormCardVw);


onDelete()做到这一点:

CardView cv = (CardView) ((ImageView) v).getTag();
parentRelativeLayout.removeView(cv);

上面的代码所做的是CardViewdelRowBtn的标记中检索对象并将其从 中删除parentRelativeLayout

您的活动的完整代码:

import android.content.Context;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.CardView;
import android.support.v7.widget.Toolbar;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.LinearLayout;

public class ExperienceInfoActivity extends AppCompatActivity {
    Toolbar toolbar;
    private LinearLayout parentRelativeLayout;
    private ViewGroup.LayoutParams params;
    private int count = 1;

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

        CardView experienceInfoActivityFormCardVw = findViewById(R.id.experienceInfoActivityFormCardVw);
        ImageView delRowBtn = findViewById(R.id.delRowBtn);
        delRowBtn.setTag(experienceInfoActivityFormCardVw);
        params = experienceInfoActivityFormCardVw.getLayoutParams();

        initViews();
        initListeners();
    }

    private void initListeners() {

    }

    private void initViews() {
        toolbar=(Toolbar) findViewById(R.id.toolbarExperienceInfoActivity);
        toolbar.setTitle("Employee Experience Info");
        toolbar.setTitleTextColor(getResources().getColor(R.color.toolBarTitle));
        toolbar.setNavigationIcon(getResources().getDrawable(R.drawable.ic_arrow_back_black_24dp));
        setSupportActionBar(toolbar);

        parentRelativeLayout = (LinearLayout) findViewById(R.id.experienceDetailsInfoRelLayout);
    }

    public void onAddField(View view) {
        try{
            LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            final View rowView = inflater.inflate(R.layout.experience_details_row, null);
            ImageView delRowBtn = rowView.findViewById(R.id.delRowBtn);
            delRowBtn.setTag(rowView);
            rowView.setLayoutParams(params);
            parentRelativeLayout.addView(rowView, parentRelativeLayout.getChildCount());
            EditText employerNameEditText = rowView.findViewById(R.id.employerNameEditText);
            employerNameEditText.requestFocus();
            count++;
        }catch (Exception e){
            e.printStackTrace();
        }
    }
    public void onDelete(View v) {
        try{
            if (count == 1) return;
            CardView cv = (CardView) ((ImageView) v).getTag();
            parentRelativeLayout.removeView(cv);
            count--;

        }catch (Exception e){
            e.printStackTrace();
        }
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在Android Studio中添加用于登录的按钮功能

如何在Android Studio中添加延迟?

如何在Android Studio中添加按钮单击事件

如何在Android Studio中删除模块

如何在Android中单击按钮时向JSONObject添加值?

单击按钮时如何在表格中添加子行

如何在Android Studio中添加图标图像按钮

如何在Cardview Android中添加动画?

如何在Android中单击按钮隐藏和显示密码?

如何在Android中实用地添加和删除布局?

使用Angular和Ionic,如何在单击按钮时将元素添加到DOM中

如何在Django管理中添加编辑和删除按钮

单击按钮时如何在EXTJS中添加字段集

如何在表中单击按钮时添加动态行?

如何在Android Studio中删除标签

在div中添加元素和按钮时,每个按钮如何将自身删除?

如何在Android中删除LinearLayout和relativeLayout之间的空格

单击时如何添加和删除类

如何在单击时添加CSS并在单击关闭按钮时将其删除

如何在android中的linearlayout中删除阴影?

如何在cardView android中添加listView?

如何在按钮点击时添加和删除类

如何在单击添加按钮时从表中添加或删除记录,并在提交时将所有表行发送到控制器?

单击html表单中的提交按钮时,如何在html和javascript中添加div面板?

如何在cardview android studio中制作运行文本?

如何在android中单击按钮时更改ImageView?

如何在 Angular8 中单击复选框时从本地存储中添加和删除值

我们如何在android中单击按钮时单击背景中的照片?

如何在单击时删除按钮/单击按钮替换 php 中的时间