android 剪貼簿相關
阿新 • • 發佈:2019-01-08
copyText : 複製文字到剪貼簿 getText : 獲取剪貼簿的文字 copyUri : 複製uri到剪貼簿 getUri : 獲取剪貼簿的uri copyIntent : 複製意圖到剪貼簿 getIntent : 獲取剪貼簿的意圖 public class ClipboardUtils { private ClipboardUtils() { throw new UnsupportedOperationException("u can't instantiate me..."); } /** * 複製文字到剪貼簿 * * @param context 上下文 * @param text 文字 */ public static void copyText(Context context, CharSequence text) { ClipboardManager clipboard = (ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE); clipboard.setPrimaryClip(ClipData.newPlainText("text", text)); } /** * 獲取剪貼簿的文字 * * @param context 上下文 * @return 剪貼簿的文字 */ public static CharSequence getText(Context context) { ClipboardManager clipboard = (ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE); ClipData clip = clipboard.getPrimaryClip(); if (clip != null && clip.getItemCount() > 0) { return clip.getItemAt(0).coerceToText(context); } return null; } /** * 複製uri到剪貼簿 * * @param context 上下文 * @param uri uri */ public static void copyUri(Context context, Uri uri) { ClipboardManager clipboard = (ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE); clipboard.setPrimaryClip(ClipData.newUri(context.getContentResolver(), "uri", uri)); } /** * 獲取剪貼簿的uri * * @param context 上下文 * @return 剪貼簿的uri */ public static Uri getUri(Context context) { ClipboardManager clipboard = (ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE); ClipData clip = clipboard.getPrimaryClip(); if (clip != null && clip.getItemCount() > 0) { return clip.getItemAt(0).getUri(); } return null; } /** * 複製意圖到剪貼簿 * * @param context 上下文 * @param intent 意圖 */ public static void copyIntent(Context context, Intent intent) { ClipboardManager clipboard = (ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE); clipboard.setPrimaryClip(ClipData.newIntent("intent", intent)); } /** * 獲取剪貼簿的意圖 * * @param context 上下文 * @return 剪貼簿的意圖 */ public static Intent getIntent(Context context) { ClipboardManager clipboard = (ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE); ClipData clip = clipboard.getPrimaryClip(); if (clip != null && clip.getItemCount() > 0) { return clip.getItemAt(0).getIntent(); } return null; } }