精华内容
下载资源
问答
  • 网上有很多复制粘贴的文章,只是放到自己的程序中不知道如何处理,现在寻得一可行方法如下:Android的剪切板(ClipboardManager)注意:导包的时候API 11之前: android.text.ClipboardManagerAPI 11之后: android....

    网上有很多复制粘贴的文章,只是放到自己的程序中不知道如何处理,现在寻得一可行方法如下:

    Android的剪切板(ClipboardManager)

    注意:导包的时候

    API 11之前: android.text.ClipboardManager

    API 11之后: android.content.ClipboardManager

    代码如下:

    /**

    * 实现文本复制功能

    * @param content

    */

    public static void copy(String content, Context context) {

    // 得到剪贴板管理器

    ClipboardManager cmb = (ClipboardManager) context

    .getSystemService(Context.CLIPBOARD_SERVICE);

    cmb.setText(content.trim());

    }

    代码如下:

    /**

    * 实现粘贴功能

    *

    * @param context

    * @return

    */

    public static String paste(Context context) {

    // 得到剪贴板管理器

    ClipboardManager cmb = (ClipboardManager) context

    .getSystemService(Context.CLIPBOARD_SERVICE);

    return cmb.getText().toString().trim();

    }

    网上很多文章都是这么写的:

    第一种:

    代码如下:

    private void emulateShiftHeld(KeyEvent.Callback view) {

    try{

    KeyEvent shiftPressEvent = new KeyEvent(0, 0, KeyEvent.ACTION_DOWN,

    KeyEvent.KEYCODE_SHIFT_LEFT, 0, 0);

    shiftPressEvent.dispatch(view);

    } catch (Exception e) {

    }

    }

    第二种:

    android2.1之后版本

    其一:(已运行成功)

    代码如下:

    ClipboardManager clip = (ClipboardManager)getSystemService(Context.CLIPBOARD_SERVICE);

    clip.getText(); // 粘贴

    clip.setText(str); // 复制

    其二:

    代码如下:

    ClipboardManager c= (ClipboardManager)getSystemService(CLIPBOARD_SERVICE);

    c.setText(smsContent.getText());//设置Clipboard 的内容

    c.getText(smsContent.getText());//提取clipboard的内容

    android2.1之前版本

    代码如下:

    IClipboard clip = IClipboard.Stub.asInterface(ServiceManager.getService("clipboard"));

    clip.getClipboardText().toString();//获得复制的内容

    clip.setClipboardText(text);//设置Clipboard 的内容

    以上就是小编带来的手把手教你用剪切板——Android中的复制和粘贴的全部内容,感谢大家的阅读,更多内容请关注爱站技术频道网站。

    展开全文
  • 上次的文章提到的全局变量来实现对数据的传递,而这次采用的是剪切板来实现对数据的传递 这里要注意:在Activity之间传递数据还可以利用一些技巧,不管windows还是Linux操作系统,都会支持一种叫剪切板的技术,也...

    上次的文章提到的用全局变量来实现对数据的传递,而这次采用的是剪切板来实现对数据的传递

    这里要注意在Activity之间传递数据还可以利用一些技巧,不管windows还是Linux操作系统,都会支持一种叫剪切板的技术,也就是某一个程序将一些数据复制到剪切板上,然后其他的任何程序都可以从剪切板中获取数据,在Android系统中也存在此技术。

    使用剪切板会用到,ClipboardManager对象,这个对用剪切板会用到,ClipboardManager象用来操作剪切板,但是没有提供public的构造函数(单例模式),需要使用Activity.getSystemService(Context.CLIPBOARD_SERVICE)获取该对象。

    在Android-11(Android 3.0)版本之前,利用剪切板传递数据使用setText()和getText()方法,但是在此版本之后,这两个方法就被弃用,转而使用传递ClipData对象来代替。相对于getText和setText而言,利用ClipData对象来传递数据,更符合面向对象的思想,而且所能传递的数据类型也多样化了。

    剪切纯粹的字符串,具体代码

    MainActivity.java

    <span style="font-size:14px;">package net.csdn.blog;
    
    import android.annotation.SuppressLint;
    import android.app.Activity;
    import android.content.ClipData;
    import android.content.ClipboardManager;
    import android.content.Context;
    import android.content.Intent;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    
    public class MainActivity extends Activity {
    	private Button button;
    
    	@Override
    	protected void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.activity_main);
    		button = (Button) findViewById(R.id.button);
    		button.setOnClickListener(new View.OnClickListener() {
    
    			@SuppressLint("NewApi")//代码高级优化,自带,自动改错时可选择忽略
    			@Override
    			public void onClick(View arg0) {
    				// TODO Auto-generated method stub
    				ClipboardManager clickManager = (ClipboardManager) 
                                      getSystemService(Context.CLIPBOARD_SERVICE);//</span><span style="font-size:14px;">获取剪切板
                                    String name = "Jack";
    				clickManager.setPrimaryClip(ClipData.newPlainText("data", name));
    
                                    //直接通过ClipboardManager对象中的setPrimaryClip(ClipData clip)来设置数据类
    </span><pre name="code" class="java"><pre name="code" class="java"><span style="font-size:14px;">                                //ClipData.newPlainText("data", name)设置用于初始化数据的内容</span>
    
    
    //intent的声明和启动意图
    Intent intent = new Intent(MainActivity.this,OtherActivity.class);startActivity(intent);}});}}
    
    OtherActivity.java
    <span style="font-size:14px;">package net.csdn.blog;
    
    import android.annotation.SuppressLint;
    import android.app.Activity;
    import android.content.ClipData;
    import android.content.ClipboardManager;
    import android.os.Bundle;
    import android.widget.TextView;
    
    public class OtherActivity extends Activity {
    	private String content;
    	private TextView textView;
    	@SuppressLint("NewApi")
    	@Override
    	protected void onCreate(Bundle savedInstanceState) {
    		// TODO Auto-generated method stub
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.other);
    		ClipboardManager clipManager = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE);
    		ClipData clipData =clipManager.getPrimaryClip();
    		content = clipData.getItemAt(0).getText().toString();
    		textView = (TextView) findViewById(R.id.msg);
    		textView.setText(content);
    		
    	}
    }</span>
    main.xml

    <span style="font-size:14px;"><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context="${relativePackage}.${activityClass}" >
    
    
        <Button
            android:id="@+id/button"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="@string/button_name" />
    
    </RelativeLayout></span>
    
    other.xml

    <span style="font-size:14px;"><?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" >
    
        <TextView
            android:id="@+id/msg"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent" >
        </TextView>
    
    </LinearLayout></span>
    AndroidManifest需要添加

    <span style="font-size:14px;">        
            <activity
                android:name=".OtherActivity"
                ></activity></span>

    剪切对象,具体代码

    MainActivity.java

    package net.csdn.blog;
    
    import java.io.ByteArrayInputStream;
    import java.io.ByteArrayOutputStream;
    import java.io.ObjectInput;
    import java.io.ObjectInputStream;
    import java.io.ObjectOutputStream;
    
    import android.annotation.SuppressLint;
    import android.app.Activity;
    import android.content.ClipData;
    import android.content.ClipboardManager;
    import android.os.Bundle;
    import android.util.Base64;
    import android.widget.TextView;
    
    public class OtherActivity extends Activity {
    	private String content;
    	private TextView textView;
    	@SuppressLint("NewApi")
    	@Override
    	protected void onCreate(Bundle savedInstanceState) {
    		// TODO Auto-generated method stub
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.other);
    		ClipboardManager clipboardManager = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE);
    		ClipData clipData =clipboardManager.getPrimaryClip();
    		content = clipData.getItemAt(0).getText().toString();
    		textView =(TextView) findViewById(R.id.msg);
    		byte [] base64_byte=Base64.decode(content, Base64.DEFAULT);
    		ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(base64_byte);
    		try {
    			ObjectInputStream objectInputStream = new ObjectInputStream(byteArrayInputStream);
    			MyData myData = (MyData) objectInputStream.readObject();
    			textView.setText(myData.toString());
    		} catch (Exception e) {
    			// TODO: handle exception
    		}
    
    
    		
    	}
    }
    

    OtherActivity.java

    package net.csdn.blog;
    
    import java.io.ByteArrayInputStream;
    import java.io.ByteArrayOutputStream;
    import java.io.ObjectInput;
    import java.io.ObjectInputStream;
    import java.io.ObjectOutputStream;
    
    import android.annotation.SuppressLint;
    import android.app.Activity;
    import android.content.ClipData;
    import android.content.ClipboardManager;
    import android.os.Bundle;
    import android.util.Base64;
    import android.widget.TextView;
    
    public class OtherActivity extends Activity {
    	private String content;
    	private TextView textView;
    	@SuppressLint("NewApi")
    	@Override
    	protected void onCreate(Bundle savedInstanceState) {
    		// TODO Auto-generated method stub
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.other);
    		ClipboardManager clipboardManager = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE);
    		ClipData clipData =clipboardManager.getPrimaryClip();
    		content = clipData.getItemAt(0).getText().toString();
    		textView =(TextView) findViewById(R.id.msg);
    		byte [] base64_byte=Base64.decode(content, Base64.DEFAULT);
    		ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(base64_byte);
    		try {
    			ObjectInputStream objectInputStream = new ObjectInputStream(byteArrayInputStream);
    			MyData myData = (MyData) objectInputStream.readObject();
    			textView.setText(myData.toString());
    		} catch (Exception e) {
    			// TODO: handle exception
    		}
    
    
    		
    	}
    }
    


    MyData.java

    package net.csdn.blog;
    
    import java.io.Serializable;
    
    public class MyData implements Serializable {
    	private String name;
    	private String age;
    
    	public MyData(String name, String age) {
    		super();
    		this.name = name;
    		this.age = age;
    	}
    
    	@Override
    	public String toString() {
    		return "MyData [name=" + name + ", age=" + age + "]";
    	}
    
    	public String getName() {
    		return name;
    	}
    
    	public void setName(String name) {
    		this.name = name;
    	}
    
    	public String getAge() {
    		return age;
    	}
    
    	public void setAge(String age) {
    		this.age = age;
    	}
    
    }
    


    main.xml

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context="${relativePackage}.${activityClass}" >
    
        <Button
            android:id="@+id/button"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="@string/msg" />
    
    </RelativeLayout>
    


    other.xml

    <span style="font-size:14px;"><?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" >
    
        <TextView
            android:id="@+id/msg"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent" >
        </TextView>
    
    </LinearLayout></span>

    AndroidManifest需要添加

    <span style="font-size:14px;">        
            <activity
                android:name=".OtherActivity"
                ></activity></span>





    展开全文
  • #clipboard是剪切板,指的应该是系统中寄存复制的东西的地方 vim这么久了,始终也不知道怎么在vim中使用系统粘贴板,通常要在网上复制一段代码都是先gedit打开文件,中键粘贴后关闭,然后再vim打开编辑,真...

    就是剪切不存在buffer中,而是存在剪切板中;粘贴从剪切板粘贴。

    #buffer 意思是缓冲器,指的应该是vim内寄存复制的东西的地方

    #clipboard是剪切板,指的应该是系统中寄存复制的东西的地方


    用vim这么久了,始终也不知道怎么在vim中使用系统粘贴板,通常要在网上复制一段代码都是先gedit打开文件,中键粘贴后关闭,然后再用vim打开编辑,真的不爽;上次论坛上有人问到了怎么在vim中使用系统粘贴板,印象里回复很多,有好几页的回复却没有解决问题,今天实在受不了了又在网上找办法,竟意外地找到了,贴出来分享一下。

    如果只是想使用系统粘贴板的话直接在输入模式按Shift+Inset就可以了,下面讲一下vim的粘贴板的基础知识,有兴趣的可以看看,应该会有所收获的。
    vim帮助文档里与粘贴板有关的内容如下:

       1. vim有12个粘贴板,分别是0、1、2、...、9、a、“、+;用:reg命令可以查看各个粘贴板里的内容。在vim中简单用y只是复制到“(双引号)粘贴板里,同样用p粘贴的也是这个粘贴板里的内容;

          
       2. 要将vim的内容复制到某个粘贴板,需要退出编辑模式,进入正常模式后,选择要复制的内容,然后按"Ny完成复制,其中N为粘贴板号(注意是按一下双引号然后按粘贴板号最后按y),例如要把内容复制到粘贴板a,选中内容后按"ay就可以了,有两点需要说明一下:
              * “号粘贴板(临时粘贴板)比较特殊,直接按y就复制到这个粘贴板中了,直接按p就粘贴这个粘贴板中的内容;
              * +号粘贴板是系统粘贴板,用"+y将内容复制到该粘贴板后可以使用Ctrl+V将其粘贴到其他文档(如firefox、gedit)中,同理,要把在其他地方用Ctrl+C或右键复制的内容复制到vim中,需要在正常模式下按"+p;

          
       3. 要将vim某个粘贴板里的内容粘贴进来,需要退出编辑模式,在正常模式按"Np,其中N为粘贴板号,如上所述,可以按"5p将5号粘贴板里的内容粘贴进来,也可以按"+p将系统全局粘贴板里的内容粘贴进来。

    摘自:http://www.cnblogs.com/softwaretesting/archive/2011/07/12/2104434.html


       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%此为分割线%%%%%%%%%%%%%%%%%%%%%%%%%%%

    源自:

    http://www.zhihu.com/question/21203154


    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%此为分割线%%%%%%%%%%%%%%%%%%%%%%%%%%%

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%此为分割线%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%此为分割线%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%此为分割线%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%此为分割线%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%此为分割线%%%%%%%%%%%%%%%%%%%%%%%%%%%

    这个问题我搞明白了


    展开全文
  • 更改原因 平时截屏打开任意截屏工具,截屏后一般到了剪切板,然后粘贴到Typora里,这时Typora里的...​ 先建立.md文件,Typora打开,然后复制剪切板的图片,再次保存。 此时你会发现在你建好的相同文夹下有同名的.

    更改原因

    平时截屏打开任意截屏工具,截屏后一般到了剪切板,然后粘贴到Typora里,这时Typora里的本地图片在C盘里,位置如下:

    在这里插入图片描述

    如果需要将写好的.md文件和图片一起带走,就很麻烦,所以需要修改本地图片保存位置

    修改方法

    步骤一:修改Typora配置

    ​ 打开Typora,点击如下路径,
    在这里插入图片描述
    在这里插入图片描述

    勾上下面两个选项

    在这里插入图片描述

    然后保存退出Typora。

    步骤二:配置好之后的操作

    修改好配置之后,在想建的文件夹下

    ​ 先建立.md文件,用Typora打开,然后复制剪切板的图片,再次保存。

    此时你会发现在你建好的相同文夹下有同名的.assets文件夹,即为成功。

    想带走.md文件时,把这两个文件夹一同打包。在这里插入图片描述

    重要提醒

    因为配置时是使用相对路径,所以每次应该是先建好.md文件,再用Typora打开进行编写,不要先打开Typora。

    展开全文
  • Notepad++写代码,如何快速copy代码? 方法主要是应用键盘上的Home键和End键:鼠标光标停留在一行的某处, 按Home键光标会跳到行首,按End键光标会跳到行尾。 具体操作如下: ...然后ctrl+C复制剪切板。...
  • Unity3D 如何复制内容到剪切板

    千次阅读 2017-03-08 17:34:15
    在C#中我们直接 System.Windows.Form 下的Clipboard即可实现 https://msdn.microsoft.com/en-us/library/system.windows.forms.clipboard.getdataobject(v=vs.110).aspx if(textBox1.SelectedText != "") ...
  • EXCEL的时候,可能会遇到“excel 无法粘贴...清空剪切板的方法有3种: 1,打开“开始”----在搜索框中随意输入字符并进行粘贴复制。这样可以清空剪2,右键菜单中调出一键清空剪切板 1、按“Win+R”组合键打开...
  • 怎么复制一个表格到excel 其实就是下面的方法原生js复制table到excel表格 var text = document.getElementById(element); if (document.body.createTextRange) { var range = document.body.createTextRan...
  • //复制内容到粘贴 copyToClipboard(elemRef) { let target; let succeed = false; if(this.$refs[elemRef]){ target = this.$refs[elemRef]; // 选择内容 let currentFocus = document....
  • 一直在找如何能点击按钮将一串字符串放到手机的剪切板上,但是可能是因为搜索的关键字不对,一直无果。 向同事请教了一下,给了一个clickboard.js的插件。开始试验的时候,使用手机自带浏览器进行测试,但是提示...
  • 剪切板clipboard

    2016-08-03 00:41:50
    工作中遇到的一个问题,在项目系统中复制一段内容,或点击一个按钮,然后将这段内容添加到使用者当前电脑系统的剪切板中.刚开始的时候觉得很迷惑不知如何实现,后来前端开发人员说,她们可以做,但后来效果不好,操作复杂,...
  •  网友问:商务人士上网本办公时,每天都要大量进行复制、粘贴操作,久而久之,就会造成这样的后果:当我们复制一个文件后,它一直占用系统剪切板,平时不小心使用右键时就会粘贴到别的地方。虽然不会影响运行流畅...
  • 需要实现将textview中显示的文字,复制剪切板中。 起初看了下代码,发现EditText中直接就有这样的选项,难道是掉系统的?打开EditText中的源码,里面内容很少,但是却看到了想要的setSelection,了下...
  • 使用剪贴板剪切复制和粘贴文本 两个最有用的 clipboard 方法是 settext 和 gettext。如图 12.2 所示,这两个方法向剪贴和从 clipboard 传送字符串数据。 图 12.2 settext 和 gettext 方法向剪贴和从剪贴...
  • 网友问:商务人士上网本办公时,每天都要大量进行复制、粘贴操作,久而久之,就会造成这样的后果:当我们复制一个文件后,它一直占用系统剪切板,平时不小心使用右键时就会粘贴到别的地方。虽然不会影响运行流畅度...
  • 网友问:商务人士上网本办公时,每天都要大量进行复制、粘贴操作,久而久之,就会造成这样的后果:当我们复制一个文件后,它一直占用系统剪切板,平时不小心使用右键时就会粘贴到别的地方。番茄花园下载,虽然不会...
  • 我碰到一个问题是:在使用软件时报“检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: ...”//复制数据到剪切板 相似的方法呢求助各位大屌们~再此谢谢!
  • 如何快速调出剪切板:在开始选项卡下,点开剪贴板右下方的倒三角→点击选项,勾选按Ctrl+C两次后显示Office剪贴板前的对号。这样设置完成后在复制的时候按两次Ctrl+C就可以快速的调出剪贴板了。二.剪贴板的神操作:1...
  • 1、批量剪切粘贴如图所示,如何将红色的字体单独的复制粘贴到新的文本呢?选中红色字体,按快捷键Ctrl+F3将内容复制到剪贴,之后打开新的文档按Ctrl+Shift+F3即可粘贴。2、格式也能复制选中带有格式的文本,按Ctrl...
  • 当我想要复制粘贴一段代码中的几小段代码时,我们需要一个个的复制粘贴,这样操作会很麻烦,我们可以通过windows键+V来通过剪切板快速的粘贴。 比如这段代码中,我想快速复制粘贴ApplicationContext, dataSource ,...
  • Excel的Ctrl+C(复制)Ctrl+V(粘贴)是办公一族的最常用操作,没有之一。虽然这两个快捷键可以化解万千忧愁,但下面这3种需要复制粘贴的情形可没那么好...2)打开剪切板菜单;3)双击需要粘贴的目标单元格,再单击剪切...
  • 如何在 Win7 下一键清空剪贴

    千次阅读 2013-01-24 18:08:31
    系统时间长了,有时经常会把东西从这个盘拷到那个盘,或者把资料从U盘拷到电脑里,这就造成了一个问题,就是我复制了一个文件以后,它老占用在系统剪切板里面,有时一不小心当我使用右键的时候就不小心粘贴到别的...
  • 如何将代码保持高亮复制到word中

    万次阅读 2015-11-30 12:36:48
    第一种:在vim编辑器下,:TOhtml先转换成html,然后保存后浏览器打开,在浏览器里复制,到word...这2个选项都可以将代码保持高亮复制剪切板中,在word中粘贴即可。 或者 另外,代码复制到word后也保留了notepad++
  • 企业员工在日常使用电脑办公的过程中,剪贴可以说是使用最为广泛和频繁的一...使用鼠标选择剪贴或复制的信息,点击工具栏中的剪贴或复制按钮,或是直接使用键盘的“Ctrl+X”剪切,“Ctrl+C”复制鼠标选择插入...
  • 问题 一般来说,vim打开之后,想要选择并复制的...使用 +y 进行复制(系统剪切板); 在外部CTRL+V即可粘贴过来; 参考:点击 但是依旧无法复制到Mac本地,因此最后将文件直接下载到本地,直接进行读取,再进行复制
  • 如何监视系统剪贴变化?

    千次阅读 2006-08-02 13:27:00
    今天在上网时,复制了一个数据,可是因为其他事情忘记粘贴了,后来就找不到了,所以想到做一个监视系统剪贴变化的程序,然后把内容放到一个RIchtextbox中,可是我不知道应该如何监视系统剪贴变化,所以就Timer来不断...
  • "+ny"复制当前行下面n行到系统剪切板 注意:我的是ubuntu14.04系统,必选前后都得加",才能成功复制。 #!/usr/bin/env python # coding=utf-8 import numpy as np print np.arange(15)

空空如也

空空如也

1 2 3 4 5
收藏数 99
精华内容 39
关键字:

如何用剪切板复制