Androidアプリのプログラミング/Androidアプリプログラミングの入門・基礎知識

Androidのコピペ機能を利用する(3ページ目)

今回はAndroidのClipboardManagerを利用してコピペができるようにしてみましょう。

執筆者:若竹 雅貴


ペースト機能を実装する

今度はペースト機能を実装します。ペーストボタンを押した際に、TextViewにコピーした文字を表示するようにします。
// ペーストボタンの設定
pasteButton = (Button) findViewById(R.id.paste_button);
pasteButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (clipboard != null) {
// クリップボードにデータがある場合
if (clipboard.hasPrimaryClip()) {
// クリップボードのデータがテキストの場合
if (clipboard.getPrimaryClipDescription().hasMimeType(
ClipDescription.MIMETYPE_TEXT_PLAIN)) {
// コピーしたアイテムを取得
ClipData.Item item = clipboard.getPrimaryClip()
.getItemAt(0);
// ペーストする文字列をクリップボードから取得
String pasteData = (String) item.getText();
if(pasteData != null){
// textViewにペーストする。
textView.setText(pasteData);
}
}
}
}
}
});
今回のアプリでは、テキストのみコピぺするという制約がありますので、ClipDescription.MIMETYPE_TEXT_PLAINでテキストのMIMEタイプの場合のみ、ペーストができるように判別のプログラムを入れています。その後ClipData.Itemを取得し、アイテムからテキストを取得してTextViewに反映しています。

以上でコピペの機能が完成しました。このアプリでコピーとペーストをした状態を以下に示します。

「あいう」という文字をコピーし、ペーストした様子。

「あいう」という文字をコピーし、ペーストした様子。


今回はテキストのコピペのみの開発でしたが、画像などのバイナリデータのコピーやIntentのコピーなどクリップボードで扱うデータの範囲を広げることで、アイデア次第では便利なアプリを作ることができます。ぜひ、これらのコピペにも挑戦して、便利なアプリを開発してみてください。

【編集部おすすめの購入サイト】
Amazonで Android アプリ関連の書籍をチェック!楽天市場で Android アプリ関連の書籍をチェック!
  • 前のページへ
  • 1
  • 2
  • 3
※記事内容は執筆時点のものです。最新の内容をご確認ください。
※OSやアプリ、ソフトのバージョンによっては画面表示、操作方法が異なる可能性があります。

あわせて読みたい

あなたにオススメ

    表示について

    カテゴリー一覧

    All Aboutサービス・メディア

    All About公式SNS
    日々の生活や仕事を楽しむための情報を毎日お届けします。
    公式SNS一覧
    © All About, Inc. All rights reserved. 掲載の記事・写真・イラストなど、すべてのコンテンツの無断複写・転載・公衆送信等を禁じます