我希望我突出显示的文字显示为按钮上的文字。
EditText et;
Button button;
String test;
button = (Button)findViewById(R.id.button);
et =(EditText)findViewById(R.id.et);
int startSelection=et.getSelectionStart();
int endSelection=et.getSelectionEnd();
test = et.getText().toString().substring(startSelection, endSelection);
button.setOnClickListener(
new View.OnClickListener()
{
public void onClick(View view)
{
button.setText(test);
}
});
我不明白为什么它不起作用,我认为getseltectionstart和end将我的文本转换为字符串,然后将其显示在按钮上?
答案 0 :(得分:0)
public static final int getSelectionStart(CharSequence text)
在API级别1中添加返回选择锚点的偏移量 cursor,如果没有选择或光标,则返回-1。
因此,只要您实例化项目,就会调用getSelectionStart()和getSelectionEnd(),它们都返回-1(因为您没有选择任何内容)。
答案 1 :(得分:0)
button.setOnClickListener(
new View.OnClickListener()
{
public void onClick(View view)
{
int startSelection=et.getSelectionStart();
int endSelection=et.getSelectionEnd();
test = et.getText().toString().substring(startSelection, endSelection);
button.setText(test);
}
});
}
有效,谢谢!