Android 的Edittext 如何自动换行,数据多行显示,并且限定回车键不能换行

Android 的Edittext 如何自动换行,数据多行显示,并且限定回车键不能换行


edittext 有一个自动换行的属性 textMultiLine
editext也可以设置setOnEditorActionListener重写onEditorAction的方法
设置imeOptions属性为actionDone
当是按下done键时返回true
  enter事件不被消费,实现了限定

这里就有一个问题了
当edittext的inputtype设置为自动换行,重写的属性不起作用
当edittext的inputtype设置为text,重写的属性起作用了,但就是不能自动换行了!
求解决方法🐶🐶

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

只要监听按键并处理回车键即可,参考如下代码:

<EditText
    android:id="@+id/et"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" />
EditText editText = (EditText) findViewById(R.id.et);
editText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
    @Override
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
        if (event.getKeyCode() == KeyEvent.KEYCODE_ENTER) {
            Toast.makeText(MainActivity.this, "no enter", Toast.LENGTH_SHORT).show();
            return true;
        }
        return false;
    }
});


  • 米罗攻城狮 提问者 #1
    点击enter键监听不到?
    2018-10-29 14:42:53
  • irista23 回复 提问者 米罗攻城狮 #2
    确认下模拟器是否可以接收pc键盘输入,如果不可以在模拟器设置的地方添加下keyboard support
    2018-10-29 14:52:50
  • 米罗攻城狮 提问者 回复 irista23 #3
    真的是,在手机运行就起作用了,??
    2018-10-29 14:59:50
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
Android网络操作与数据存储2018版
  • 参与学习           人
  • 提交作业       307    份
  • 解答问题       1613    个

本专题是联网及数据处理的必备技能。课程从网络基础知识到线程间协同工作、异步下载处理。介绍了Android内外部文件存储、轻量级数据库SQLite的使用。利用屏幕适配、状态保持、百度地图解决实际问题。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师