Android TextView 고급 디 스 플레이 기법 인 스 턴 스 소결

3870 단어 AndroidTextView
본 고의 실례 는 Android TextView 의 고급 디 스 플레이 기 교 를 총 결 하 였 다.여러분 께 참고 하도록 공유 하 겠 습 니 다.구체 적 으로 는 다음 과 같 습 니 다.
1.사용자 정의 글꼴
setTypeface(Typeface)방법 으로 텍스트 상자 에 있 는 텍스트 의 글꼴 을 설정 할 수 있 으 며,Android 의 Typeface 는 TTF 글꼴 파일 로 글꼴 을 설정 합 니 다.
따라서 TTF 글꼴 파일 을 프로그램 에 넣 고 Typeface 를 사용 하여 글꼴 을 설정 할 수 있 습 니 다.첫 번 째 단 계 는 assets 디 렉 터 리 에 fonts 디 렉 터 리 를 새로 만 들 고 TTF 글꼴 파일 을 여기에 놓 습 니 다.두 번 째 단계,프로그램 에서 호출:

TextViewtv = (TextView)findViewById(R.id.textView);
AssetManagermgr=getAssets();//  AssetManager
Typefacetf=Typeface.createFromAsset(mgr, "fonts/mini.TTF");//      Typeface
tv.setTypeface(tf);//    

효 과 는 다음 그림 과 같다.

2.다양한 색상 의 글자 보이 기
Android 는 html 형식의 문자열 을 지원 합 니 다.Html.from Html(str)방법 으로 html 형식의 문자열 str 를 변환 할 수 있 습 니 다.
예 는 다음 과 같다.

StringtextStr1 = "<font color=\"#ffff00\">     ,</font><br>";
StringtextStr2 = "<font color=\"#00ff00\">      ,</font><br>";
StringtextStr3 = "<font color=\"#ff00ff\">     ,</font><br>";
StringtextStr4 = "<font color=\"#00ffff\">         <br>  ……</font><br>";
tv.setText(Html.fromHtml(textStr1+textStr2+textStr3+textStr4));

실행 후 효 과 는 다음 과 같 습 니 다:

3.글씨체 굵기
xml 레이아웃 파일 에서 android:textStyle="bold"를 사용 하면 영 어 를 굵게 설정 할 수 있 지만,중국 어 를 굵게 설정 할 수 없습니다.중국 어 를 굵게 설정 하 는 방법 은 TextPaint 의'굵게'를 사용 하여 setFakeBold Text 를 true 로 설정 하 는 것 입 니 다.예제 코드 는 다음 과 같다.

tv.getPaint().setFakeBoldText(true);

효 과 는 다음 과 같 습 니 다:

4.그림자 추가
xml 레이아웃 파일 에 일련의 android:shadow XXX 속성 을 사용 하면 설정 음영 을 추가 할 수 있 습 니 다.구체 적 으로:shadow Color 에 그림자 색상 설정 하기;shadowdx 그림자 수평 오프셋 설정 하기;shadowdy 그림자 수직 오프셋 설정 하기;shadow Radius 는 그림자 반경 을 설정 합 니 다.
예제 코드:

android:shadowColor="#ffffff"
android:shadowDx="15.0"
android:shadowDy="5.0"
android:shadowRadius="2.5"

다음 과 같은 효과 보이 기:

5.그림 삽입
그림 을 삽입 하 는 데 는 두 가지 방법 이 있 습 니 다.첫 번 째 방법 은 위 에서 말 한 html 형식의 문자열 을 사용 하 는 것 입 니 다.하지만 변환 이 좀 번 거 롭 습 니 다.이미지 Getter 클래스 를 사용 하여 그림 의 src 속성 을 변환 해 야 합 니 다.예제 코드 는 다음 과 같다.

StringimgStr = "<img src=\""+R.drawable.sidai+"\"/>";
Html.ImageGetterimageGetter = new Html.ImageGetter() {
   public Drawable getDrawable(Stringarg0) {
     // TODO Auto-generated methodstub
     int id =Integer.parseInt(arg0);
     Drawable draw =getResources().getDrawable(id);
     draw.setBounds(10, 10, 228,300);
     return draw;
   }
};
tv.append(Html.fromHtml(imgStr,imageGetter,null));

두 번 째 방법 은 xml 레이아웃 파일 의 일련의 android:drawableXXX 속성 을 사용 하여 그림 삽입 을 실현 하 는 것 입 니 다.구체 적 으로:drawable Bottom 은 텍스트 상자 에 있 는 텍스트 의 하단 에 지정 한 그림 을 그립 니 다.drawableLeft 는 텍스트 상자 의 왼쪽 에 지정 한 그림 을 그립 니 다.drawableRight 는 텍스트 상자 의 오른쪽 에 지정 한 그림 을 그립 니 다.drawableTop 은 텍스트 상자 의 맨 위 에 지정 한 그림 을 그립 니 다.drawablePadding 은 텍스트 상자 의 텍스트 와 그림 사이 의 간격 을 설정 합 니 다.예제 코드:

android:drawableBottom="@drawable/sidai"

그림 삽입 후 표시 효 과 는 다음 과 같 습 니 다.

더 많은 안 드 로 이 드 관련 내용 에 관심 이 있 는 독자 들 은 본 사이트 의 주 제 를 볼 수 있다.
본 고 에서 말 한 것 이 여러분 의 안 드 로 이 드 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.

좋은 웹페이지 즐겨찾기