【问题标题】:dynamic cross button on top-right of image to delete it图片右上角的动态十字按钮可将其删除
【发布时间】:2018-06-02 10:56:04
【问题描述】:

我想放置一个十字按钮,它可以帮助用户删除 imageView 中的图片,就像在附件中删除附件一样

我有一个实现两个imageview的想法,但是如何添加按钮?

 <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        tools:context="com.harit.visitor.Add_Visitor">

        <EditText
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:inputType="textPersonName"
            android:ems="10"
            android:id="@+id/fNameEditText"
            android:layout_alignParentTop="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:hint="First Name"
            android:layout_marginLeft="05sp"
            android:layout_marginRight="05sp"
            android:layout_marginTop="20sp" />

        <EditText
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:inputType="textPersonName"
            android:ems="10"
            android:id="@+id/lNameEditText"
            android:layout_below="@+id/fNameEditText"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:hint="Last Name"
            android:layout_marginLeft="05sp"
            android:layout_marginRight="05sp"
            android:layout_marginTop="10sp" />

        <EditText
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:inputType="textEmailAddress"
            android:ems="10"
            android:id="@+id/emailEditText"
            android:layout_below="@+id/lNameEditText"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:layout_marginLeft="05dp"
            android:layout_marginTop="10dp"
            android:layout_marginRight="05dp"
            android:hint="E-Mail" />

        <EditText
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:inputType="phone"
            android:ems="10"
            android:id="@+id/phoneEditText"
            android:layout_below="@+id/emailEditText"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:layout_marginLeft="05sp"
            android:layout_marginTop="10sp"
            android:layout_marginRight="05sp"
            android:hint="Phone Number" />

        <EditText
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/sponsorEditText"
            android:layout_below="@+id/phoneEditText"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:layout_marginTop="10sp"
            android:layout_marginLeft="05sp"
            android:layout_marginRight="05sp"
            android:hint="Sponsor" />

        <EditText
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:id="@+id/categoryEditText"
            android:layout_below="@+id/sponsorEditText"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:layout_marginLeft="05sp"
            android:layout_marginTop="10sp"
            android:layout_marginRight="05sp"
            android:hint="Category" />

        <ImageView
            android:layout_width="100sp"
            android:layout_height="100sp"
            android:id="@+id/imageView"

            android:layout_marginTop="335sp"
            android:layout_marginLeft="05sp" />

        <Button
            android:layout_width="200dp"
            android:layout_height="wrap_content"
            android:text="take Picture"
            android:id="@+id/takePictureButton"
            android:layout_below="@+id/categoryEditText"
            android:layout_toRightOf="@+id/imageView"
            android:layout_toEndOf="@+id/imageView"
            android:layout_marginLeft="25sp"
            android:layout_marginTop="10sp" />

        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="sumbit"
            android:id="@+id/submitButton"
            android:layout_below="@+id/takePictureButton"
            android:layout_alignRight="@+id/takePictureButton"
            android:layout_alignEnd="@+id/takePictureButton"
            android:layout_alignLeft="@+id/takePictureButton"
            android:layout_alignStart="@+id/takePictureButton" />

    </RelativeLayout>

【问题讨论】:

  • 请提供您的想法

标签: android android-layout imageview


【解决方案1】:

试试这个:-

您将在右上角放置 x 类似的图像。

    <ImageView
      android:id="@+id/imageView1"
      android:layout_width="100sp"
      android:layout_height="100sp"
      android:layout_marginTop="335sp"
      android:layout_marginLeft="05sp"
      android:src="@drawable/crossImage"
      />

您将在点击交叉图像时删除 src 图像,如下所示:-

ImageView imageView=(ImageView)findViewById(R.id.imageView);
       view.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
             imageView.setImageDrawable(null);
            //or use this imageView.setImageResource(0);

        }
    });

【讨论】:

  • 它像宝石一样工作...我还有另一个问题,当我捕获图像时它以横向模式显示。如何将其设置为肖像?
  • 请参考这张肖像模式图片:-stackoverflow.com/questions/16128608/…
【解决方案2】:

使用此布局并为十字按钮添加 svg

<?xml version="1.0" encoding="utf-8"?>

<EditText
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:inputType="textPersonName"
    android:ems="10"
    android:id="@+id/fNameEditText"
    android:layout_alignParentTop="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:hint="First Name"
    android:layout_marginLeft="05sp"
    android:layout_marginRight="05sp"
    android:layout_marginTop="20sp" />

<EditText
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:inputType="textPersonName"
    android:ems="10"
    android:id="@+id/lNameEditText"
    android:layout_below="@+id/fNameEditText"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:hint="Last Name"
    android:layout_marginLeft="05sp"
    android:layout_marginRight="05sp"
    android:layout_marginTop="10sp" />

<EditText
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:inputType="textEmailAddress"
    android:ems="10"
    android:id="@+id/emailEditText"
    android:layout_below="@+id/lNameEditText"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:layout_marginLeft="05dp"
    android:layout_marginTop="10dp"
    android:layout_marginRight="05dp"
    android:hint="E-Mail" />

<EditText
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:inputType="phone"
    android:ems="10"
    android:id="@+id/phoneEditText"
    android:layout_below="@+id/emailEditText"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:layout_marginLeft="05sp"
    android:layout_marginTop="10sp"
    android:layout_marginRight="05sp"
    android:hint="Phone Number" />

<EditText
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/sponsorEditText"
    android:layout_below="@+id/phoneEditText"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:layout_marginTop="10sp"
    android:layout_marginLeft="05sp"
    android:layout_marginRight="05sp"
    android:hint="Sponsor" />

<EditText
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:id="@+id/categoryEditText"
    android:layout_below="@+id/sponsorEditText"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:layout_marginLeft="05sp"
    android:layout_marginTop="10sp"
    android:layout_marginRight="05sp"
    android:hint="Category" />

<ImageView
    android:layout_width="100sp"
    android:layout_height="100sp"
    android:id="@+id/imageView"
    android:layout_marginTop="335sp"
    android:layout_marginLeft="05sp" />

<ImageView
    android:id="@+id/close_button"
    android:layout_width="20dp"
    android:layout_height="20dp"
    android:layout_marginTop="4dp"
    android:layout_marginRight="4dp"
    android:layout_alignTop="@+id/imageView"
    android:layout_alignRight="@+id/imageView"/>

<Button
    android:layout_width="200dp"
    android:layout_height="wrap_content"
    android:text="take Picture"
    android:id="@+id/takePictureButton"
    android:layout_below="@+id/categoryEditText"
    android:layout_toRightOf="@+id/imageView"
    android:layout_toEndOf="@+id/imageView"
    android:layout_marginLeft="25sp"
    android:layout_marginTop="10sp" />

<Button
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="sumbit"
    android:id="@+id/submitButton"
    android:layout_below="@+id/takePictureButton"
    android:layout_alignRight="@+id/takePictureButton"
    android:layout_alignEnd="@+id/takePictureButton"
    android:layout_alignLeft="@+id/takePictureButton"
    android:layout_alignStart="@+id/takePictureButton" />

【讨论】:

  • 如何在单击十字按钮时将具有图像的 imageView 的 src 设置为 null?
  • 你可以添加 android:src="@null"
  • 或者如果你想在java中你可以使用 imageview.setImageBitmap(null);
  • 如果您投反对票,请发表评论,以便我纠正 myslef
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-11-10
  • 2016-08-18
  • 1970-01-01
  • 2019-11-14
  • 2018-05-30
  • 1970-01-01
  • 2022-10-16
相关资源
最近更新 更多