複製文本到粘貼板中

將輸入框中的文本內容複製到粘貼板中,通過添加文本到粘貼池中的頂項,粘貼的時候可以取出池中的第一項,因爲默認也是取出第一項,因此可以粘貼到其他地方。activity代碼如下:
package com.dou361.clipboard;

import android.app.Activity;
import android.content.ClipData;
import android.content.ClipboardManager;
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends Activity implements OnClickListener {

	private EditText etContent;
	private EditText etRecontent;
	private Button btnCopy;
	private Button btnPaste;
	
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		
		etContent = (EditText) findViewById(R.id.et_content);
		etRecontent = (EditText) findViewById(R.id.et_recontent);
		btnCopy = (Button) findViewById(R.id.btn_copy);
		btnCopy.setOnClickListener(this);
		btnPaste = (Button) findViewById(R.id.btn_paste);
		btnPaste.setOnClickListener(this);
	}

	@Override
	public void onClick(View v) {
		if(v.getId() == R.id.btn_copy) {
			//需要複製到粘貼板的內容
			String content = etContent.getText().toString().trim();
			//獲得粘貼板管理者
			ClipboardManager clipboard = (ClipboardManager)getSystemService(Context.CLIPBOARD_SERVICE);
			//將內容存到粘貼板中
			ClipData clip = ClipData.newPlainText("simple text",content);
			//置頂到粘貼板中
			clipboard.setPrimaryClip(clip);

		} else if(v.getId() == R.id.btn_paste) {
			//獲得粘貼板管理者
			ClipboardManager clipboard = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);
			//獲得粘貼板的第一項
			ClipData.Item item = clipboard.getPrimaryClip().getItemAt(0);
			//取出第一項的內容
			String pasteData = (String) item.getText();
			etRecontent.setText(pasteData);
			
		}
	}
}
佈局文件如下:
<pre name="code" class="java"><LinearLayout 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"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:orientation="vertical"
    tools:context="com.dou361.clipboard.MainActivity" >

    <EditText
        android:id="@+id/et_content"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:minLines="3"
        android:hint="請輸入內容" />
    <Button
        android:id="@+id/btn_copy"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="複製到粘貼板" />
    <Button
        android:id="@+id/btn_paste"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="粘貼內容到以下文本" />
    <EditText
        android:id="@+id/et_recontent"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:minLines="3"
        android:hint="請粘貼內容" />

</LinearLayout>

效果圖如下:


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章