Ответ на ваш вопрос не только к textview
, но и другие view
в Android.
Вам понадобится новый класс self-self, который расширит представление, которое вам нужно изменить.
, например:
public class NewTextView extends TextView{
public NewTextView(){} //just constructor
@Override
public void onDraw(Canvas canvas){
//this is a main method that do your work.
//for example, you will draw a `baloon` like iPhone
}
Вот пример кода, который нарисовать прямую линию в каждой строке EditText
(как вы набираете в работе). Вы можете увидеть этот код и научиться делать это.
Снова: для этого вы должны иметь некоторые знания о рисовании в android (Canvas или OpenGL).
public class EditTextExtra extends EditText {
private Rect Rect;
private Paint Paint;
public EditTextExtra (Context context, AttributeSet attrs) {
super(context, attrs);
Rect = new Rect();
Paint = new Paint();
Paint.setStyle(Paint.Style.FILL_AND_STROKE);
Paint.setColor(Color.BLACK);
}
@Override
protected void onDraw(Canvas canvas) {
int count = getHeight()/getLineHeight();
if(getLineCount() > count){
count = getLineCount(); // for long text with scrolling
}
Rect r = Rect;
Paint paint = Paint;
int baseline = getLineBounds(0, r); // first line
for (int i = 0; i < count; i++) {
canvas.drawLine(r.left, baseline + 1, r.right, baseline + 1, paint);
baseline += getLineHeight(); // next line
}
super.onDraw(canvas);
}
}
Не делайте приложение для Android похожим на iOS, пожалуйста. –