错误:非静态方法gettext()无法从EditText.getText()。toString();中的静态内容中获取。

时间:2017-03-26 13:17:42

标签: java android android-studio textview clipboardmanager

我正在尝试添加一个复制文本的按钮,我收到了这个错误。什么是静态内容。如果我不能使用它,我该怎么用?

cButton.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    myClipboard = (ClipboardManager)getSystemService(CLIPBOARD_SERVICE);
                    String text;
                    text=EditText.getText().toString();

                    myClip=ClipData.newPlainText("this is the text", text);
                    Toast.makeText(getApplicationContext(),"Text Sucessfully Copied",Toast.LENGTH_SHORT).show();

                }
            });

2 个答案:

答案 0 :(得分:0)

您正在调用EditText.getText()。 getText()不是静态函数。您需要在EditText对象的实例上调用getText()。 像

这样的东西
(EditText)view.getText()

与ClipData.newPlainText相同。你必须拥有一个对象实例才能调用它。

答案 1 :(得分:0)

首先,您需要使用findViewByID()方法绑定您的editText然后;

而不是这个,

EditText.getText().toString();

尝试使用它:

EditText yourEditText = (EditText) findViewById(R.id.yourEditTextId)
yourEditText.getText().toString();

只需要从XML布局中按ID查找视图即可。然后,你用它来完成你的工作。