亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Android TextView中顯示彩虹字

系統 3405 0
一. 實現很簡單,就是對顏色進行線性的漸變。用到的類是LinearGradient.直接貼代碼:
    
public class Test extends Activity {
 private TextViewTest mTextViewTest;

 /** Called when the activity is first created. */
 @Override
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  mTextViewTest = new TextViewTest(this);
  setContentView(mTextViewTest);
 }

 public class TextViewTest extends TextView {
  private LinearGradient mGradient;
  private int[] mGradientColors = { Color.RED, Color.rgb(255, 165, 0),
    Color.YELLOW, Color.GREEN, Color.rgb(0, 255, 255), Color.BLUE,
    Color.rgb(160, 32, 240) };
  private int mTitleWidth;
  private String mTitle = "三十六天罡,七十二地煞,乃是天地正邪之氣所生,如今奉命下凡轉世為科學家.但法用以正,則可以造福人群;";

  public TextViewTest(Context context) {
   super(context);
   // TODO Auto-generated constructor stub
   setLayoutParams(new LinearLayout.LayoutParams(
     LinearLayout.LayoutParams.FILL_PARENT,
     LinearLayout.LayoutParams.FILL_PARENT));
   setWillNotDraw(false);
  }

  @Override
  protected void onDraw(Canvas canvas) {
   // TODO Auto-generated method stub
   super.onDraw(canvas);
   measure(0, 0);
   
   Paint paint = new Paint();
   paint.setStyle(Style.FILL_AND_STROKE);
   mGradient = new LinearGradient(0, 0, getWidth(),
     getMeasuredHeight(), mGradientColors, null, TileMode.REPEAT);
   paint.setShader(mGradient);
   
   mTitleWidth = 0;
   float[] width = new float[mTitle.length()];
   paint.getTextWidths(mTitle, width);
   Log.i("Tag", "Width.length= " + width.length);
   int start = 0;
   int offsetY = 10;
   for (int j = 0; j < mTitle.length(); j++) {
    mTitleWidth += (int) Math.ceil(width[j]);
    if (mTitleWidth > getWidth()) {
     canvas.drawText(mTitle.substring(start, j), 0, offsetY,
       paint);
     mTitleWidth = 0;
     start = start + j;
     offsetY = offsetY + getMeasuredHeight() + 5;
     j--;
    }
   }
   if (mTitleWidth > 0) {
    canvas.drawText(mTitle.substring(start), 0, offsetY, paint);
   }
  }
 }
}
  

二. 實例圖

Android TextView中顯示彩虹字

Android TextView中顯示彩虹字


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 91精品视频免费观看 | 香蕉视频黄色片 | 好吊妞免费视频 | 国产精品久久久久精 | 97影院支持微信微博观看 | 在线看的成人性视频 | 精品一级毛片 | 99热这里只有精品国产免费 | 国产亚洲精品成人久久网站 | 亚洲99久久久久综合 | 一本久草 | 99久久影院| 欧美成人精品高清在线播放 | 黄色视屏在线免费观看 | 中文字幕99 | 国产精品亚洲第一区二区三区 | 国产精品亚洲欧美 | 深夜福利网址 | 欧美69xx | 看看的在线视频国产 | 性感毛片 | 欧美亚洲精品一区二三 | 免费在线观看黄色的网站 | 四虎影视永久费观看在线 | 精品国产精品国产 | 久久国产精品网 | 天天看天天爽 | 玖玖99视频 | 视频一区亚洲 | 久草福利站 | 亚洲在线中文 | 亚洲综合色视频 | 国产成人一区二区视频在线观看 | 国产亚洲精品一区二区在线播放 | 全黄冷激性性视频 | 成人欧美一区二区三区视频不卡 | 亚洲欧美一区二区三区在线播放 | 久久精品视频99 | 亚洲精品亚洲一区二区 | 久久美女网 | 爱爱夜夜爽成人夜夜爽 |