You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

EditText内容分次输入后在TextView中显示为段落的实现问题

解决EditText多次输入整合到TextView显示段落的问题

嘿,我看你现在要实现的是把用户多次在EditText里输入的内容,整合起来在TextView里显示成连贯的段落对吧?先说说你现有代码里的几个小问题:

  1. 每次点击都新建StringBuilder:这样每次点击按钮时,之前输入的内容都会被清空,根本存不住历史输入;
  2. 用BufferedReader读EditText完全没必要:EditText的内容直接通过getText().toString()就能获取,BufferedReader是用来处理文件、流这类场景的,用在这纯属绕弯路啦。

下面给你一个简单可行的实现方案:

步骤1:声明全局的StringBuilder

把StringBuilder放在Activity的成员变量位置,这样它的生命周期和Activity一致,能一直保存历史输入的内容:

private StringBuilder mCombinedText = new StringBuilder();
private EditText ed1;
private TextView tvResult;
private Button b1;

步骤2:完善按钮点击事件

在点击事件里,我们直接获取EditText的输入内容,追加到全局的StringBuilder中,然后更新TextView,最后清空EditText方便下次输入:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.your_layout); // 替换成你的布局ID

    ed1 = findViewById(R.id.ed1);
    tvResult = findViewById(R.id.tv_result); // 替换成你的TextView ID
    b1 = findViewById(R.id.b1);

    b1.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            String inputContent = ed1.getText().toString().trim();
            
            // 跳过空输入,避免添加无用的换行或空格
            if (!inputContent.isEmpty()) {
                // 如果已有内容,先加个换行(如果要连续句子就换成空格),让段落更清晰
                if (mCombinedText.length() > 0) {
                    mCombinedText.append("\n");
                }
                // 追加本次输入的内容
                mCombinedText.append(inputContent);
                // 更新TextView显示整合后的段落
                tvResult.setText(mCombinedText.toString());
                // 清空EditText,方便用户下次输入
                ed1.setText("");
            }
        }
    });
}

小细节调整

  • 如果希望每次输入的内容是连续的句子(不是分段),把mCombinedText.append("\n")改成mCombinedText.append(" ")就行;
  • 可以根据需求添加输入提示,比如当用户输入空内容时,用Toast提示一下。

这样就能实现你想要的效果:用户每次输入内容点击按钮,EditText清空,TextView里一直保留所有输入的内容,整合为段落显示~

内容的提问来源于stack exchange,提问作者user2173696

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.13 07:34:34