【Android】TextViewのカスタマイズ

Android Tipsプログラミング

TextViewのカスタマイズについて、主な設定を挙げます。

import android.app.Activity;
import android.graphics.Color;
import android.graphics.Typeface;
import android.text.TextUtils;
import android.widget.TextView;

public class MyClass extentds Activity{

  public void myMethod(){
    TextView txt = new TextView(this);

    // 余白の設定
    // left,top,right,bottom [px]
    txt.setPadding(10,0,0,0);

    // フォントサイズの設定
    txt.setTextSize(18); // 18px

    // 文字色の設定
    txt.setTextColor(Color.argb(255,105,105,105)); // dimgray

    // フォントの設定
    // typeface: DEFAULT,DEFAULT_BOLD,MONOSPACE,SANS_SERIF,SERIF
    // style: NORMAL,BOLD,ITALIC,BOLD_ITALIC
    txt.setTypeface(Typeface.DEFAULT_BOLD);
    txt.setTypeface(Typeface.SERIF,Typeface.BOLD);

    // テキストの最大(最小)行数の設定
    txt.setMaxLines(10);
    txt.setMinLines(1);

    // テキストの最大(最小)大きさの設定
    txt.setMaxWidth(100); // 100px
    txt.setMinWidth(10);
    txt.setMaxHeight(10);
    txt.setMinHeight(5);

    // はみ出た文字の省略記号(位置)の設定
    // START,END,MIDDLE,,MARQUEE
    txt.setEllipsize(TextUtils.TruncateAt.END);

    // テキスト付近に表示する画像の設定
    // left,top,right,bottom
    txt.setCompoundDrawablesWithIntrinsicBounds(R.drawable.icon,null,null,null);
    txt.setCompoundDrawablePadding(5); // 余白[px]

    // テキスト設定
    txt.setText("Test");
  }
}

xmlだとこうなります。

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
  android:id="@+id/myText"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:paddingLeft="10px"
  android:textSize="18px"
  android:textColor="#696969"
  android:typeface="serif" // normal,suns,serif,monospace
  android:textStyle="bold" // normal,bold,italic
  android:maxLines="10"
  android:minLines="1"
  android:maxWidth="100px"
  android:minWidth="10px"
  android:maxHeight="10px"
  android:minHeight="5px"
  android:ellipsize="end" // none,start,middle,end,marquee
  android:drawableLeft="@drawable/icon"
  android:drawablePadding="5px"
  android:text="Test"
/>

参考: Viewコンポーネントの余白設定
参考: ImageViewのカスタマイズ
参考: Viewのクリックイベント
参考: Viewのタッチイベント

コメント