본문 바로가기
Android Tip

안드로이드 초보자가 생각못할수도 있는 OnClickListener(온클릭 리스너)

by 일용직 코딩노동자 2020. 1. 21.
728x90
반응형

왼만한 View에는 OnClickListener를 사용 할 수 있습니다.

 

간혹 생각을 못하시고 어찌해야하는지 고민하는 분들이 있습니다.

 

import androidx.appcompat.app.AppCompatActivity;

import android.media.Image;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.ProgressBar;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

    TextView tv1;
    ImageView imageview;
    EditText edit;
    LinearLayout linear;
    ProgressBar progressBar;

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

        tv1 = findViewById(R.id.tv1);
        imageview = findViewById(R.id.imageview);
        edit = findViewById(R.id.edit);
        linear = findViewById(R.id.linear);
        progressBar = findViewById(R.id.progressBar);

        tv1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast.makeText(MainActivity.this, "TextView 입니다.", Toast.LENGTH_SHORT).show();
            }
        });

        imageview.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast.makeText(MainActivity.this, "ImageView 입니다.", Toast.LENGTH_SHORT).show();
            }
        });

        edit.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast.makeText(MainActivity.this, "EditText 입니다.", Toast.LENGTH_SHORT).show();
            }
        });

        linear.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast.makeText(MainActivity.this, "LinearLayout 입니다.", Toast.LENGTH_SHORT).show();
            }
        });

        progressBar.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast.makeText(MainActivity.this, "progressBar 입니다.", Toast.LENGTH_SHORT).show();
            }
        });
    }
}

 크게 다를건 없습니다. 버튼 리스너와 똑같이 걸어주시면 동일합니다.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
    android:orientation="vertical"
    android:id="@+id/linear"
    tools:context=".MainActivity">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="TextView 입니다"
        android:textSize="40dp"
        android:id="@+id/tv1">
    </TextView>

    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/ic_launcher_background"
        android:id="@+id/imageview">
    </ImageView>
    <EditText
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:hint="EditText 입니다"
        android:id="@+id/edit">
    </EditText>

    <ProgressBar
        android:id="@+id/progressBar"
        style="?android:attr/progressBarStyle"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

</LinearLayout>

아래 예제 영상을 확인해주세요

 

궁금하신 사항은 댓글 남겨주세요. 

 

 

ㄱ ㅏ   ㄱ  푸시

                                                                                            ㅗ o    ㅗ  푸시 :D

728x90
반응형

댓글