편집 기록

편집 기록
  • 프로필 알 수 없는 사용자님의 편집
    날짜2018.06.21

    텍스트뷰에서 여러개의 스타일을 적용하는게 가능해요?


    예를 들어서 tv.setText(line1 + "\n" + line2 + "\n" + word1 + "\t" + word2 + "\t" + word3); 이런 문장이 있으면 line1, line2, word1, word2... 마다 다 다른 스타일을 적용하고 싶은데요 제가 찾은 소스는

        // Edit Text를 받아오기.
        EditText vw = (EditText)findViewById(R.id.text);
    
        // EditText에 텍스트 입력
        vw.setText("Italic, highlighted, bold.");
    
        Spannable str = vw.getText();
    
        str.setSpan(new StyleSpan(android.graphics.Typeface.ITALIC), 0, 7, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
        str.setSpan(new BackgroundColorSpan(0xFFFFFF00), 8, 19, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
        str.setSpan(new StyleSpan(android.graphics.Typeface.BOLD), 21, str.length() - 1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    

    이런 방식인데 각 텍스트마다 몇번째 인덱스부터 몇번째인지를 적어야하잖아요.. 좀더 깔끔한 방법 없을까요?

  • 프로필 김진경님의 편집
    날짜2016.01.27

    텍스트뷰에서 여러개의 스타일을 적용하는게 가능해요?


    예를 들어서 tv.setText(line1 + "\n" + line2 + "\n" + word1 + "\t" + word2 + "\t" + word3); 이런 문장이 있으면 line1, line2, word1, word2... 마다 다 다른 스타일을 적용하고 싶은데요 제가 찾은 소스는

        // Edit Text를 받아오기.
        EditText vw = (EditText)findViewById(R.id.text);
    
        // EditText에 텍스트 입력
        vw.setText("Italic, highlighted, bold.");
    
        Spannable str = vw.getText();
    
        str.setSpan(new StyleSpan(android.graphics.Typeface.ITALIC), 0, 7, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
        str.setSpan(new BackgroundColorSpan(0xFFFFFF00), 8, 19, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
        str.setSpan(new StyleSpan(android.graphics.Typeface.BOLD), 21, str.length() - 1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    

    이런 방식인데 각 텍스트마다 몇번째 인덱스부터 몇번째인지를 적어야하잖아요.. 좀더 깔끔한 방법 없을까요?