일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 개발일지
- groovy double colon
- 예약 배포
- 앱출시
- 예약 게시
- double colon
- Android 앱 출시
- Android App 출시
- mysql 소수점 함수
- 그루비 람다
- Firebase Crashlytics
- sql truncate
- bookmark
- android
- 1인개발
- 프로그래머스 수박수박수박수박수박수
- 코딩테스트
- 게시 개요
- 푸시메세지
- sql 소수점제거
- 이중콜론
- Firebase
- 프로그래머스
- 파이어베이스
- 파이어베이스 크래시틱스
- 북마크
- 안드로이드
- 알고리즘
- 구글 플레이 스토어 출시
- Groovy lambda
- Today
- Total
Moon_Dev_Blog :)
[Android] 텍스트뷰 세로방향으로 글쓰기 본문
안녕하세요. 본 포스팅은 주관적으로 작성되며, 틀린 정보가 있을시에 따끔한 충고 부탁드리겠습니다. 감사합니다.
내용 : android 주요 View중 하나인 TextView의 내용을 세로로 입력하기 위한 Custom 해보도록 하겠습니다.
.java
package com.test.util;
import android.content.Context; import android.graphics.Canvas; import android.text.TextPaint; import android.util.AttributeSet;
public class VerticalTextView extends android.support.v7.widget.AppCompatTextView {
public VerticalTextView(Context context, AttributeSet attrs) { super(context, attrs); }
@Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { super.onMeasure(heightMeasureSpec, widthMeasureSpec); setMeasuredDimension(getMeasuredHeight(), getMeasuredWidth()); }
// 텍스트뷰 가로 입력 @Override protected void onDraw(Canvas canvas) { // Custom View를 생성할때 원하는 폰트 , 색상 , 크기 설정 TextPaint textPaint = getPaint(); textPaint.setColor(getCurrentTextColor()); textPaint.drawableState = getDrawableState();
// View를 그리위한 객체 Canvas canvas.save();
canvas.translate(0, getHeight()); canvas.rotate(-90); // 90도로 회전
canvas.translate(getCompoundPaddingLeft(), getExtendedPaddingTop());
getLayout().draw(canvas); canvas.restore(); // Canvas 상태를 복원합니다. } }
|
.xml
<com.test.util.VerticalTextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="#343254" android:fontFamily="sans-serif-bold" android:gravity="center_vertical" android:includeFontPadding="false" android:text="Day Shift" android:textAlignment="center" android:textColor="#FFFFFF" app:scale_height="70" app:scale_textsize="5.5" app:scale_width="7" /> |
결과화면 Preview
'IT > Android' 카테고리의 다른 글
[Android] Firebase Crashlytics를 이용한 강력한 오류보고 기능 연동 - 2 (0) | 2020.12.14 |
---|---|
[Android] Firebase Crashlytics를 이용한 강력한 오류보고 기능 연동 - 1 (0) | 2020.12.12 |
[Android] Firebase 플랫폼 연동하기 (0) | 2020.12.07 |
[Android] USB 연결 없이 APP 설치 하는 Android Studio 플러그인 (WIFI ADB ULTIMATE) (0) | 2020.05.06 |
[Android] 정확한 UI 표현을 하기 위한 커스텀 ScalableLayout (0) | 2019.07.27 |