상세 컨텐츠

본문 제목

[안드로이드] TextView 클릭 시 효과(ripple)주는 방법

안드로이드

by aries574 2021. 12. 10. 14:37

본문


1. 이번 시간에는 텍스트뷰를 클릭 시에 효과를 주는 방법에 

대하여 알아보겠습니다.

1. 테마 아이템 추가 themes.xml

style태그 안에 아래 코드를 입력하시면 됩니다.

        <!-- 클릭시 효과주기-->
        <item name="android:colorControlHighlight">@color/purple_200</item>

2. 색상 정보 colors.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <color name="purple_200">#FFBB86FC</color>
    <color name="purple_500">#FF6200EE</color>
    <color name="purple_700">#FF3700B3</color>
    <color name="teal_200">#FF03DAC5</color>
    <color name="teal_700">#FF018786</color>
    <color name="black">#FF000000</color>
    <color name="white">#FFFFFFFF</color>
    <color name="pink500">#E91E63</color>
    <color name="pink800">#AD1457</color>
    <color name="red700">#D32F2F</color>
</resources>

 

3. drawable 파일 추가

3-1 custom_ripple_border.xml

<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
    android:color="@color/purple_200"
    >

    <item android:id="@+id/mask"
        android:drawable="@color/white"/>

</ripple>

3-2 custom_ripple_borderless.xml

<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
    android:color="@color/purple_200"
    >

</ripple>

 

4. 메인화면 구성 activity_main.xml

<?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"
    tools:context=".MainActivity">


    <TextView
        android:background="?android:attr/selectableItemBackground"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="내부 효과"
        android:textColor="@color/black"
        android:textSize="22sp"
        android:padding="20dp"
        android:onClick="dummyclick"
        />

    <TextView
        android:background="?android:attr/selectableItemBackgroundBorderless"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="내부밖 효과"
        android:textColor="@color/black"
        android:textSize="22sp"
        android:padding="20dp"
        android:onClick="dummyclick"
        />

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/custom_ripple_border"
        android:text="사용자 정의 내부 효과"
        android:textColor="@color/black"
        android:textSize="22sp"
        android:padding="20dp"
        android:onClick="dummyclick"
        />

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/custom_ripple_borderless"
        android:text="사용자 정의 내부밖 효과"
        android:textColor="@color/black"
        android:textSize="22sp"
        android:padding="20dp"
        android:onClick="dummyclick"
        />

</LinearLayout>

 

5. 메인코드 MainActivity.java

import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;


public class MainActivity extends AppCompatActivity {


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

    }

    public void dummyclick(View view) {
    }
}

 

 

 

2021.12.09 - [안드로이드] - [안드로이드]Material Design Button 쉽게 만드는 방법

 

[안드로이드]Material Design Button 쉽게 만드는 방법

2021.12.08 - [안드로이드] - [안드로이드] Material Design EditText 쉽게 만드는 방법 [안드로이드] Material Design EditText 쉽게 만드는 방법 이번 시간에는 Material Design을 통해서 EditText를 깔끔하게..

aries574.tistory.com

2021.12.08 - [안드로이드] - [안드로이드] Material Design EditText 쉽게 만드는 방법

 

[안드로이드] Material Design EditText 쉽게 만드는 방법

이번 시간에는 Material Design을 통해서 EditText를 깔끔하게 만들어 보도록 하겠습니다. 1. 라이브러리 등록 build.gradle(Module:프로젝트명:app) dependencies 괄호 안에 아래 코드를 넣어주시면 됩니다. impl..

aries574.tistory.com

2021.12.07 - [안드로이드] - [안드로이드]custom 타이틀바(titlebar) Toolbar 쉽게 만드는 방법

 

[안드로이드]custom 타이틀바(titlebar) Toolbar 쉽게 만드는 방법

2021.12.06 - [안드로이드] - [안드로이드] 상태바(statusbar), 타이틀바(titlebar) 색상 쉽게 바꾸는 방법 [안드로이드] 상태바(statusbar), 타이틀바(titlebar) 색상 쉽게 바꾸는 방법 이번 시간에는 안드로이드

aries574.tistory.com

 

반응형

관련글 더보기

댓글 영역