0

Androidデベロッパーのページにあるコピーアンドペーストのガイドに従っています。ただし、私にはよくわからないセクションがあります。これは、プレーンテキストでの貼り付けに関するセクションです。

// Gets the ID of the "paste" menu item
MenuItem mPasteItem = menu.findItem(R.id.menu_paste);

// If the clipboard doesn't contain data, disable the paste menu item.
// If it does contain data, decide if you can handle the data.
if (!(clipboard.hasPrimaryClip())) {

mPasteItem.setEnabled(false);

} else if (!(clipboard.getPrimaryClipDescription().hasMimeType(MIMETYPE_TEXT_PLAIN))) {

    // This disables the paste menu item, since the clipboard has data but it is not plain text
    mPasteItem.setEnabled(false);
} else {

    // This enables the paste menu item, since the clipboard contains plain text.
    mPasteItem.setEnabled(true);
}
}

ほとんど理解できますが、気が狂ったのはメンバー変数の使用でした。これらのガイドが1:1のコードではないことは知っていますが、「menu」という名前の変数については、見つけただけで言及されていませんでした。それで、私はおそらく私よりもAndroidを知っている人たちに尋ねています、この変数の目的は何ですか?menu.xmlファイルに戻って編集し、「コピー」と「貼り付け」の項目(この「チュートリアル」が使用しているようです)を作成したことは知っていますが、これをインスタンス化/初期化する方法がわかりません。メニューも、その目的もよくわかりません。誰かが私にこれを説明できますか?

ありがとう。

4

1 に答える 1

2

文書化されていない変数を使用する愚かな Android 開発者...

Menuこれは、貼り付けボタン (a MenuItem)を含むレイアウトへの参照です。このアイテムには IDmenu_pasteがありますが、これはあなたが知っているかもしれないし、知らないかもしれません。

現実的には、このmenu変数Menuは、メニュー項目を含む任意のレイアウトにすることができます。Menuの作成方法については、こちらを参照してください。

于 2012-08-10T22:53:15.547 に答える