安卓软件开发中怎么让一个EditText自动换行

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了安卓软件开发中怎么让一个EditText自动换行相关的知识,希望对你有一定的参考价值。

安卓软件开发中怎么让一个EditText自动换行而且要让他显示在左上角上 像window的记事本一样 我想写格记事本软件...

package com.example.android.helloactivity;

import android.content.Context;

import android.graphics.Paint;

import android.graphics.Rect;

import android.text.TextPaint;

import android.util.AttributeSet;

import android.view.Display;

import android.view.KeyEvent;

import android.view.WindowManager;

import android.widget.EditText;

public class MyEditor extends EditText 

        int screenWidth = 0;

        int screenHeight = 0;

        int currentHeight = 0;

        Context context = null;

        public MyEditor(Context context, AttributeSet attrs) 

                super(context, attrs);

                this.context = context;

                currentHeight = getHeight();

                WindowManager windowManager = (WindowManager) this.context

                                .getSystemService(Context.WINDOW_SERVICE);

                Display display = windowManager.getDefaultDisplay();

//取得屏幕宽度和高度

                screenWidth = display.getWidth();

                screenHeight = display.getHeight();

                setScrollBarStyle(DRAWING_CACHE_QUALITY_AUTO);

/*                Rect rect = new Rect();

                Paint p = new Paint();

                p.setTypeface(getTypeface());

                p.getTextBounds("A", 0, 1, rect);

                fontWidth = rect.width();*/

        

        @Override

        public boolean onKeyUp(int keyCode, KeyEvent event) 

                TextPaint paint = getPaint();

                float len = paint.measureText(getText().toString());

                //计算得到当前应该有几行

                int line = ((int)len / screenWidth + 1);

                getEllipsize() ;

                setFrame(0, 0, screenWidth, line * 60);

                // setHeight(line*60) ;

                // setMarqueeRepeatLimit(line) ;

                // setMaxHeight(line*60) ;

                // setLines(line) ;

                // setBackgroundColor(Color.WHITE) ;

                return false;

        

追问

能给我解释下什么意思吗 我看不懂...谢谢了

参考技术A

  默认的edittext是不会自动换行的,需要通过代码实现。

EditText editText = new EditText(this);  
//设置EditText的显示方式为多行文本输入  
editText.setInputType(InputType.TYPE_TEXT_FLAG_MULTI_LINE);  
//文本显示的位置在EditText的最上方  
editText.setGravity(Gravity.TOP);  
editText.setText("1233333333333333333333333333333333333333333333333333333333333333333333333333");  
//改变默认的单行模式  
editText.setSingleLine(false);  
//水平滚动设置为False  
editText.setHorizontallyScrolling(false);

怎么在Excel表格中,让文字自动转行啊?

一、首先,打开Excel表格程序,在我Excel表格程序中选中要设置自动换行的单元格。

二、然后,右键选中单元格,在右键菜单中选择“设置单元格格式”,点击打开。

三、然后,在“设置单元格格式”窗口中选择“自动换行”,将其勾选。

四、最后,即可看到Excel表格中文字自动换行我,问题解决。

参考技术A

1、演示使用的软件为office系列下的excel办公软件,演示版本为office家庭和学生版2016。

2、首先打开office软件中的电子表格软件,然后在表格的一个单元格中输入一行文字。

3、可以看到此时文字并没有自动转行,此时我们选中该单元格在菜单栏中找到开始菜单,在开始菜单下的工具栏中找到自动换行按钮,点击。

4、点击后可以看到我们选中的单元格已经自动根据列宽进行换行了。

5、然后我们拖动列标,对列宽进行设置,可以看到随着我们的拖动,文字是自动根据列宽进行换行的。

参考技术B Alt+Enter 这是手动换行
要自动换行:Ctrl+1 调出单元格格式
选“对齐”---“自动换行”
这样文字满一行就自动换行了本回答被提问者采纳
参考技术C 选中单元格 调整其列宽 编辑 填充 内容重排 忽略提示 确定 参考技术D 选择要自动转行的单元格→右键→设置单元格格式→点对齐→钩选自动换行→确定

以上是关于安卓软件开发中怎么让一个EditText自动换行的主要内容,如果未能解决你的问题,请参考以下文章

怎么让 android EditText hint 不换行

请问在EditText中空格自动换行问题怎么解决?

android开发怎么让edittext无法获取焦点

怎么在Excel表格中,让文字自动转行啊?

EditText为什么不能自动换行呢?

android开发,edittext监听跳转的时候会先换行,然后光标再跳入下一个edittext,这是怎么回事?