Android实现复制粘贴功能

来源:互联网 发布:仿商城html5源码 编辑:程序博客网 时间:2024/04/29 15:59

1.在Application中获取ClipboardManager

public class MyApplication extends Application{    private static Application mApp;    private static ClipboardManager mClipboardManager;    @Override    public void onCreate() {        super.onCreate();        mApp = this;    }    public static ClipboardManager getClipboardManager(){        if (mClipboardManager == null) {            mClipboardManager = (ClipboardManager) mApp.getSystemService(Context.CLIPBOARD_SERVICE);        }        return mClipboardManager;    }}

2.在工具类中添加弹出复制的Dialog

public class Utils {    public static void showCopyDialog(Context context , final String content){        new AlertDialog.Builder(context)        .setTitle("选项")        .setItems(new String[]{"复制"}, new DialogInterface.OnClickListener() {            @Override            public void onClick(DialogInterface dialog, int which) {                MyApplication.getClipboardManager().setText(content);                dialog.dismiss();            }        }).show();    }}

3.将TextView的内容复制到EditText中

public class MainActivity extends Activity implements OnClickListener{    private TextView mTextView;    private EditText mEditText;    private MyApplication mApp;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        mApp = (MyApplication) getApplicationContext();        initViews();        registerListener();    }    private void registerListener() {        mTextView.setOnClickListener(this);    }    private void initViews() {        mTextView = (TextView) findViewById(R.id.textView1);        mEditText = (EditText) findViewById(R.id.editText1);    }    @Override    public void onClick(View v) {        mTextView.setOnClickListener(new OnClickListener() {            @Override            public void onClick(View v) {                Utils.showCopyDialog(MainActivity.this, mTextView.getText().toString());            }        });    }}

4.测试一下

这里写图片描述

3 0
原创粉丝点击