我进行了搜索,但是我看到的问题仅涉及copy
,copying to clipboard
或pasting
。具体来说,我想要的是(单击1,在PositiveButton
中的AlertDialog
)是将用户在EditText
的{{1}}中输入的文本复制到{{1我的alertdialog
中的}}。
您能告诉我该怎么做吗?这是我正在使用并尝试修复的代码:
EditText
答案 0 :(得分:2)
我为您编写了这个简单的代码示例。
只需在“活动”中的edittext上添加setText方法:
private void setTextFromDialog(final String textFromDialog){
myEditText.setText(textFromDialog);
}
当用户单击对话框时,从edittext对话框获取文本并使用此方法传递
:setTextFromDialog(YouEditTextValueX);
此处为代码示例:
import android.content.DialogInterface;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
private EditText myEditText;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button ShowDialog = findViewById(R.id.showdialog_id);
myEditText = findViewById(R.id.editText_id);
ShowDialog.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
AlertDialog.Builder alert = new AlertDialog.Builder(MainActivity.this);
final EditText edittext = new EditText(MainActivity.this);
alert.setTitle("Title");
alert.setMessage("Message");
alert.setView(edittext);
alert.setPositiveButton("Set text", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
String YouEditTextValueX = edittext.getText().toString();
if(YouEditTextValueX.length() > 0){
//this line for call method and pass the text
setTextFromDialog(YouEditTextValueX);
}
}
});
alert.setNegativeButton("Exit", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
// what ever you want to do with No option.
}
});
alert.show();
}
});
}
private void setTextFromDialog(final String textFromDialog){
myEditText.setText(textFromDialog);
}
}
希望对您有帮助