簡體   English   中英

如何在 imageview 之外創建一個清除按鈕?

[英]How to create a clear button out out imageview?

所以我目前正在做一個即將到期的項目。

它包括制作帶有數字按鈕等的電話應用程序。

老師問我們的問題之一是添加一個Imageview,當有10個字符或以上時,將其用作清除TextView的按鈕。

感謝任何幫助,我對 Android 編碼還是很陌生,所以我的知識非常糟糕哈哈

這是我的 Java 代碼:

    Button no1,no2,no3,no4,no5,no6,no7,no8,no9,no0;
    TextView tv1;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        no1=(Button) findViewById(R.id.no1);
        no2=(Button) findViewById(R.id.no2);
        no3=(Button) findViewById(R.id.no3);
        no4=(Button) findViewById(R.id.no4);
        no5=(Button) findViewById(R.id.no5);
        no6=(Button) findViewById(R.id.no6);
        no7=(Button) findViewById(R.id.no7);
        no8=(Button) findViewById(R.id.no8);
        no9=(Button) findViewById(R.id.no9);
        no0=(Button) findViewById(R.id.no0);
        tv1=(TextView)findViewById(R.id.tv1);

        no1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                tv1.setText(tv1.getText()+"1");
            }
        });
        no2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                tv1.setText(tv1.getText()+"2");
            }
        });
        no3.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                tv1.setText(tv1.getText()+"3");
            }
        });
        no4.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                tv1.setText(tv1.getText()+"4");
            }
        });
        no5.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                tv1.setText(tv1.getText()+"5");
            }
        });
        no6.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                tv1.setText(tv1.getText()+"6");
            }
        });
        no7.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                tv1.setText(tv1.getText()+"7");
            }
        });
        no8.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                tv1.setText(tv1.getText()+"8");
            }
        });
        no9.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                tv1.setText(tv1.getText()+"9");
            }
        });
        no0.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                tv1.setText(tv1.getText()+"0");
            }
        });
    }
}

這是我的 XML:

<androidx.constraintlayout.widget.ConstraintLayout 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"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <TextView
        android:id="@+id/tv1"
        android:layout_width="262dp"
        android:layout_height="85dp"
        android:layout_marginTop="4dp"
        android:gravity="center|right"
        android:textSize="30sp"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="1.0"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        android:maxLength="10"
        android:inputType="phone" />

    <ImageView
        android:id="@+id/btnclear"
        android:layout_width="79dp"
        android:layout_height="73dp"
        android:layout_marginStart="20dp"
        android:layout_marginTop="16dp"
        android:clickable="true"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:srcCompat="@drawable/phone_on" />

    <androidx.constraintlayout.widget.ConstraintLayout
        android:layout_width="345dp"
        android:layout_height="404dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_bias="0.994">

        <Button
            android:id="@+id/no7"
            android:layout_width="100dp"
            android:layout_height="100dp"
            android:text="7"
            android:textSize="30sp"
            app:layout_constraintBottom_toTopOf="@+id/no4"
            app:layout_constraintEnd_toStartOf="@+id/no8"
            app:layout_constraintHorizontal_bias="0.5"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent" />

        <Button
            android:id="@+id/no8"
            android:layout_width="100dp"
            android:layout_height="100dp"
            android:text="8"
            android:textSize="30sp"
            app:layout_constraintBottom_toTopOf="@+id/no5"
            app:layout_constraintEnd_toStartOf="@+id/no9"
            app:layout_constraintHorizontal_bias="0.5"
            app:layout_constraintStart_toEndOf="@+id/no7"
            app:layout_constraintTop_toTopOf="parent" />

        <Button
            android:id="@+id/no9"
            android:layout_width="100dp"
            android:layout_height="100dp"
            android:text="9"
            android:textSize="30sp"
            app:layout_constraintBottom_toTopOf="@+id/no6"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintHorizontal_bias="0.5"
            app:layout_constraintStart_toEndOf="@+id/no8"
            app:layout_constraintTop_toTopOf="parent" />

        <Button
            android:id="@+id/no4"
            android:layout_width="100dp"
            android:layout_height="100dp"
            android:text="4"
            android:textSize="30sp"
            app:layout_constraintBottom_toTopOf="@+id/no1"
            app:layout_constraintEnd_toStartOf="@+id/no5"
            app:layout_constraintHorizontal_bias="0.5"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/no7" />

        <Button
            android:id="@+id/no5"
            android:layout_width="100dp"
            android:layout_height="100dp"
            android:text="5"
            android:textSize="30sp"
            app:layout_constraintBottom_toTopOf="@+id/no2"
            app:layout_constraintEnd_toStartOf="@+id/no6"
            app:layout_constraintHorizontal_bias="0.5"
            app:layout_constraintStart_toEndOf="@+id/no4"
            app:layout_constraintTop_toBottomOf="@+id/no8" />

        <Button
            android:id="@+id/no6"
            android:layout_width="100dp"
            android:layout_height="100dp"
            android:text="6"
            android:textSize="30sp"
            app:layout_constraintBottom_toTopOf="@+id/no3"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintHorizontal_bias="0.5"
            app:layout_constraintStart_toEndOf="@+id/no5"
            app:layout_constraintTop_toBottomOf="@+id/no9" />

        <Button
            android:id="@+id/no1"
            android:layout_width="100dp"
            android:layout_height="100dp"
            android:text="1"
            android:textSize="30sp"
            app:layout_constraintBottom_toTopOf="@+id/etoile"
            app:layout_constraintEnd_toStartOf="@+id/no2"
            app:layout_constraintHorizontal_bias="0.5"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/no4" />

        <Button
            android:id="@+id/no2"
            android:layout_width="100dp"
            android:layout_height="100dp"
            android:text="2"
            android:textSize="30sp"
            app:layout_constraintBottom_toTopOf="@+id/no0"
            app:layout_constraintEnd_toStartOf="@+id/no3"
            app:layout_constraintHorizontal_bias="0.5"
            app:layout_constraintStart_toEndOf="@+id/no1"
            app:layout_constraintTop_toBottomOf="@+id/no5" />

        <Button
            android:id="@+id/no3"
            android:layout_width="100dp"
            android:layout_height="100dp"
            android:text="3"
            android:textSize="30sp"
            app:layout_constraintBottom_toTopOf="@+id/Hashtag"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintHorizontal_bias="0.5"
            app:layout_constraintStart_toEndOf="@+id/no2"
            app:layout_constraintTop_toBottomOf="@+id/no6" />

        <Button
            android:id="@+id/etoile"
            android:layout_width="100dp"
            android:layout_height="100dp"
            android:text="*"
            android:textSize="30sp"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toStartOf="@+id/no0"
            app:layout_constraintHorizontal_bias="0.5"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/no1" />

        <Button
            android:id="@+id/no0"
            android:layout_width="100dp"
            android:layout_height="100dp"
            android:text="0"
            android:textSize="30sp"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toStartOf="@+id/Hashtag"
            app:layout_constraintHorizontal_bias="0.5"
            app:layout_constraintStart_toEndOf="@+id/etoile"
            app:layout_constraintTop_toBottomOf="@+id/no2" />

        <Button
            android:id="@+id/Hashtag"
            android:layout_width="100dp"
            android:layout_height="100dp"
            android:text="#"
            android:textSize="30sp"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintHorizontal_bias="0.5"
            app:layout_constraintStart_toEndOf="@+id/no0"
            app:layout_constraintTop_toBottomOf="@+id/no3" />
    </androidx.constraintlayout.widget.ConstraintLayout>

</androidx.constraintlayout.widget.ConstraintLayout>

這是我設計的截圖:設計部分

謝謝您的幫助

首先,您需要在 XML 中使您的 ImageView 可點擊:

android:clickable="true"

然后,您可以在OnClickListener上設置 OnClickListener,就像為按鈕的 rest 所做的那樣。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM