Project/안드로이드 프로젝트(HomingBird)
Android Studio, Java ] Edit text color 변경(밑줄, 커서, 하이라이트 등)
김마리님
2020. 11. 24. 09:32
안드로이드는 기본적으로 정해진 디폴트 컬러가 있다.
테마에 들어가면 칙칙한 그 색깔인데.. 그게 디폴트 컬러로 정해져서 커서를 올리면 이런 색상이 등장한다 (오)
이 색을 테마에 맞추어 변경한다.
간단하다. style.xml 을 열여 새 테마를 추가해준다.
- style.xml
...
<!--edit text default style-->
<style name="editText" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorAccent">@color/color_eb9f9f</item>
<item name="colorControlNormal">>@color/color_a79c8e</item>
</style>
</resources>
상속받는 부모는 내가 현재 사용하는 테마와 동일하게 지칭해준다. 저는 앱바를 쓰지 않아서 NoActionBar로 부모를 상속받았다.
Accent는 포커싱 되었을 때의 색상을 의미하고, ControlNormal은 포커싱 되지 않을때의 색상을 의미한다.
이제 이 테마를 edittext에 지정한다
- fragment_write_message_second.xml
...
<EditText
android:id="@+id/editTextName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="14sp"
android:textColor="@color/color_838383"
android:theme="@style/editText"
/>
...
전체적으로 다시 살펴보면 다음과 같이 된다.
다음처럼 포커싱 안됐을 때 / 포커싱 됐을 때 의 색상이 다름을 알 수 있다.
반응형