成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

Android中實(shí)現(xiàn)記事本動(dòng)態(tài)添加行效果

本文主要給大家介紹了關(guān)于Android實(shí)現(xiàn)記事本動(dòng)態(tài)添加行的相關(guān)內(nèi)容,分享出來供大家參考學(xué)習(xí),下面來一起看看詳細(xì)的介紹:

創(chuàng)新互聯(lián)主要從事做網(wǎng)站、網(wǎng)站制作、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)疊彩,10多年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):13518219792

先看效果圖:

Android中實(shí)現(xiàn)記事本動(dòng)態(tài)添加行效果

這是昨天在群里面有人在問這個(gè)問題,在這里順便記錄一下,這個(gè)效果我們可以自定義EditText,實(shí)現(xiàn)起來也不難

看詳細(xì)步驟:

第一:初始化Paint,這里肯定要用到畫筆的

  this.paint = new Paint();
  paint.setStyle(Paint.Style.STROKE);
  paint.setColor(getResources().getColor(R.color.paper_line));
  paint.setStrokeWidth(getLineHeight() / 10);
  paint.setStrokeCap(Paint.Cap.ROUND);

第二步:在onDraw里面計(jì)算一下偏移量就可以

 float startX = getPaddingLeft();//開始位置
  float stopX = getWidth() - getPaddingRight();//結(jié)束位置
  float offsetY = getPaddingTop() - getPaint().getFontMetrics().top + paint.getStrokeWidth() * 2;//行間距
  for (int i = 0; i < getLineCount(); ++i) {
   float y = offsetY + getLineHeight() * i;
   canvas.drawLine(startX, y, stopX, y, paint);
  }

Ok,這樣就輕松搞定了。

全部代碼:

/**
 * Created by dong.he on 2017/4/20 0020.
 */

public class LinedEditText extends EditText {

 Paint paint;

 public LinedEditText(Context context) {
  super(context);
  init();
 }

 public LinedEditText(Context context, AttributeSet attrs) {
  super(context, attrs);
  init();
 }

 public LinedEditText(Context context, AttributeSet attrs, int defStyleAttr) {
  super(context, attrs, defStyleAttr);
  init();
 }

 @Override
 protected void onDraw(Canvas canvas) {
  float startX = getPaddingLeft();//開始位置
  float stopX = getWidth() - getPaddingRight();//結(jié)束位置
  float offsetY = getPaddingTop() - getPaint().getFontMetrics().top + paint.getStrokeWidth() * 2;//行間距
  for (int i = 0; i < getLineCount(); ++i) {
   float y = offsetY + getLineHeight() * i;
   canvas.drawLine(startX, y, stopX, y, paint);
  }

  super.onDraw(canvas);
 }

 private void init() {
  this.paint = new Paint();
  paint.setStyle(Paint.Style.STROKE);
  paint.setColor(getResources().getColor(R.color.paper_line));
  paint.setStrokeWidth(getLineHeight() / 10);
  paint.setStrokeCap(Paint.Cap.ROUND);
 }
}

xml:

 <com.example.donghe.myview.view.LinedEditText
  android:id="@+id/textview"
  android:text="啊發(fā)發(fā)十分啊發(fā)發(fā)十分大發(fā)放大發(fā)放"
  android:textSize="18sp"
  android:background="@null"
  android:layout_width="match_parent"
  android:layout_height="wrap_content" />

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對(duì)創(chuàng)新互聯(lián)的支持。

網(wǎng)頁名稱:Android中實(shí)現(xiàn)記事本動(dòng)態(tài)添加行效果
本文鏈接:http://jinyejixie.com/article12/jdojdc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、靜態(tài)網(wǎng)站、、微信公眾號(hào)、網(wǎng)站設(shè)計(jì)公司、用戶體驗(yàn)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)
汕头市| 罗江县| 娄烦县| 阳高县| 杨浦区| 固阳县| 栾川县| 专栏| 奉化市| 墨脱县| 元朗区| 澜沧| 涿州市| 北流市| 青海省| 丁青县| 冷水江市| 蓬安县| 旌德县| 乐清市| 赤城县| 三原县| 衡阳县| 阿巴嘎旗| 锡林郭勒盟| 富阳市| 独山县| 肇源县| 枣强县| 福清市| 仙桃市| 白河县| 松原市| 福贡县| 时尚| 达拉特旗| 砚山县| 财经| 绥德县| 巴中市| 遂宁市|