Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/356.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在android中设置文本或向多行EditText中的特定行添加文本?_Java_Android - Fatal编程技术网

Java 如何在android中设置文本或向多行EditText中的特定行添加文本?

Java 如何在android中设置文本或向多行EditText中的特定行添加文本?,java,android,Java,Android,我想在android中设置文本或将文本添加到EditText的特定行中?有什么办法吗 据我所知,setText将覆盖整个文本,append将在末尾添加文本,我想做什么有什么具体的方法吗 我知道如何阅读和获取特定行中的文本,但如何在不干扰其上下其他行的情况下对该文本进行更改 1)使用EditText#getText()从EditText获取EditText 2) 对上一步中得到的可编辑进行修改 Editable有一个方法insert(int-where,CharSequence-text)-使用它

我想在android中设置文本或将文本添加到EditText的特定行中?有什么办法吗

据我所知,
setText
将覆盖整个文本,
append
将在末尾添加文本,我想做什么有什么具体的方法吗

我知道如何阅读和获取特定行中的文本,但如何在不干扰其上下其他行的情况下对该文本进行更改

1)使用
EditText#getText()从
EditText
获取
EditText

2) 对上一步中得到的
可编辑
进行修改

Editable
有一个方法
insert(int-where,CharSequence-text)
-使用它可以在需要的地方插入

3) 使用
EditText#setText()将其设置回
EditText
(将整个修改的
可编辑的
设置回)

如果您想知道在收到的
可编辑的
中哪里有行尾符号,请在其中搜索新行字符aka'\n',然后使用此位置在
'\n'
后插入某些内容,如果您想在由EditText对齐的特定行中插入,则需要进入“对齐引擎”关于
EditText
,我不知道它的详细工作原理,因此如果您想这样做,您需要阅读源代码。

1)使用
EditText#getText()从
EditText
获取
EditText

2) 对上一步中得到的
可编辑
进行修改

Editable
有一个方法
insert(int-where,CharSequence-text)
-使用它可以在需要的地方插入

3) 使用
EditText#setText()将其设置回
EditText
(将整个修改的
可编辑的
设置回)


如果您想知道在收到的
可编辑的
中哪里有行尾符号,请在其中搜索新行字符aka'\n',然后使用此位置在
'\n'
后插入某些内容,如果您想在由EditText对齐的特定行中插入,则需要进入“对齐引擎”对于
EditText
,我不知道它是如何工作的,因此如果您想这样做,您需要阅读源代码。

最有可能的是多行文本将由换行符分隔,下面的代码将为您提供一个说明

public class EditTextExample extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_edtittext_example);

        Button button = (Button) findViewById(R.id.m_button);
        button.setOnClickListener(btnListener);
    }


    //button listener
    private OnClickListener btnListener = new OnClickListener() {

    public void onClick (View view) {

    EditText etMultiLinetext = (EditText) findViewById(R.id.etMultiLineText);
    String str = etMultiLinetext.getText().toString();

    Toast.makeText(getBaseContext(), str, Toast.LENGTH_LONG).show();

    TextView tvMultiLineText = (TextView) findViewById(R.id.tvMultiLineText);
    String[] strArr = str.split(System.getProperty("line.separator"));
    for (int i = 0; i < strArr.length; i++) {
        Log.e("String value", "String value" + strArr[i]);
    }
    tvMultiLineText.setText(str);
   }
  }; 
}
public类EditTextExample扩展活动{
/**在首次创建活动时调用*/
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u edtitext\u示例);
按钮按钮=(按钮)findViewById(R.id.m_按钮);
setOnClickListener(btnListener);
}
//按钮侦听器
私有OnClickListener btnListener=新OnClickListener(){
公共void onClick(视图){
EditText etMultiLinetext=(EditText)findViewById(R.id.etMultiLinetext);
字符串str=etmultilitext.getText().toString();
Toast.makeText(getBaseContext(),str,Toast.LENGTH_LONG.show();
TextView tVMultileText=(TextView)findViewById(R.id.tVMultileText);
字符串[]strArr=str.split(System.getProperty(“line.separator”);
对于(int i=0;i
如果你想在编辑文本中添加内容,你可以通过获取
EditText
值来添加内容,并附加你需要的字符串,你可以像下面那样设置它


etMultiLine.setText(“编辑文本”)

最有可能的是多行文本将由换行符分隔,下面的代码将为您提供一个说明

public class EditTextExample extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_edtittext_example);

        Button button = (Button) findViewById(R.id.m_button);
        button.setOnClickListener(btnListener);
    }


    //button listener
    private OnClickListener btnListener = new OnClickListener() {

    public void onClick (View view) {

    EditText etMultiLinetext = (EditText) findViewById(R.id.etMultiLineText);
    String str = etMultiLinetext.getText().toString();

    Toast.makeText(getBaseContext(), str, Toast.LENGTH_LONG).show();

    TextView tvMultiLineText = (TextView) findViewById(R.id.tvMultiLineText);
    String[] strArr = str.split(System.getProperty("line.separator"));
    for (int i = 0; i < strArr.length; i++) {
        Log.e("String value", "String value" + strArr[i]);
    }
    tvMultiLineText.setText(str);
   }
  }; 
}
public类EditTextExample扩展活动{
/**在首次创建活动时调用*/
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u edtitext\u示例);
按钮按钮=(按钮)findViewById(R.id.m_按钮);
setOnClickListener(btnListener);
}
//按钮侦听器
私有OnClickListener btnListener=新OnClickListener(){
公共void onClick(视图){
EditText etMultiLinetext=(EditText)findViewById(R.id.etMultiLinetext);
字符串str=etmultilitext.getText().toString();
Toast.makeText(getBaseContext(),str,Toast.LENGTH_LONG.show();
TextView tVMultileText=(TextView)findViewById(R.id.tVMultileText);
字符串[]strArr=str.split(System.getProperty(“line.separator”);
对于(int i=0;i
如果你想在编辑文本中添加内容,你可以通过获取
EditText
值来添加内容,并附加你需要的字符串,你可以像下面那样设置它


etMultiLine.setText(“编辑文本”)

您应该尝试使用此类型代码

EditText edt_Text= new EditText(this);
edt_Text.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT));
edt_Text.setText("Hi how you");
lnrImageButton.addView(edt_Text);
并设置按钮onClick以添加所需的新字符

menu1.setOnClickListener(new View.OnClickListener(){
        @Override
        public void onClick(View v) {
            edt_Text.getText().insert(6, "are");
        }
    });
此代码用于特定的字符库

现在您应该使用此方法从字符中查找行并插入文本


我希望这将对您有所帮助。

您应该尝试使用此类型代码

EditText edt_Text= new EditText(this);
edt_Text.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT));
edt_Text.setText("Hi how you");
lnrImageButton.addView(edt_Text);
并设置按钮onClick以添加所需的新字符

menu1.setOnClickListener(new View.OnClickListener(){
        @Override
        public void onClick(View v) {
            edt_Text.getText().insert(6, "are");
        }
    });
此代码用于特定的字符库

现在您应该使用此方法从字符中查找行并插入文本


我希望这会对你有所帮助。

问题是如何让它倒退。如果我使用setText,它将覆盖整个editText,如果我使用append,那么它将只添加到末尾,我想知道如何设置或添加文本到多行的特定行edittext@Krzyszto