Adakah yang bisa tolong beri tahu saya cara menyalin teks yang ada dalam tampilan teks tertentu ke papan klip saat tombol ditekan?
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.mainpage);
textView = (TextView) findViewById(R.id.textview);
copyText = (Button) findViewById(R.id.bCopy);
copyText.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
ClipboardManager clipboard = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE);
String getstring = textView.getText().toString();
//Help to continue :)
}
});
}
}
Saya ingin menyalin Teks di TextView textView ke clipboard ketika Tombol bCopy
ditekan.
android
clipboard
copy-paste
clipboardmanager
clipboard-interaction
Darshan Gowda
sumber
sumber
Jawaban:
gunakan ClipboardManager
pastikan Anda telah mengimpor
android.content.ClipboardManager
dan BUKANandroid.text.ClipboardManager
. Akhir sudah ditinggalkan. Periksa tautan ini untuk informasi lebih lanjut.sumber
ClipboardManager clipboard = getSystemService(getContext(), ClipboardManager.class);
Di sini metode untuk menyalin teks ke clipboard:
Metode ini berfungsi pada semua perangkat android.
sumber
Kemarin saya membuat kelas ini. Ambillah, itu untuk semua Level API
sumber
Sebagai ekstensi kotlin yang berguna:
Memperbarui:
Jika Anda menggunakan ContextCompat Anda harus menggunakan:
sumber
context.getSystemService(ClipboardManager::class.java)
Anda menunjuk ke tanda tangan ContextCompat bukan? Terima kasih atas umpan baliknyaGunakan ini saja. Ini hanya berfungsi untuk android api> = 11 sebelum itu Anda harus menggunakan ClipData.
Semoga ini bisa membantu Anda :)
[UPDATE 3/19/2015] Seperti yang dikatakan Ujjwal Singh , metode
setText
ini sudah tidak digunakan lagi, Anda harus menggunakan, seperti halnya dokumen yang menyarankannya , setPrimaryClip (clipData)sumber
(ClipboardManager) this.getSystemService(Context.CLIPBOARD_SERVICE); _clipboard.setText(YOUR TEXT);
setText
gunakanClipData
+setPrimaryClip
Ini bisa dilakukan di Kotlin seperti ini:
Di mana
file.readText()
string masukan Anda.sumber
gunakan kode ini
sumber
gunakan fungsi ini untuk menyalin ke papan klip
sumber
sumber
int sdk = android.os.Build.VERSION.SDK_INT;
sumber
gunakan metode ini:
di tempat setPrimaryClip kita juga bisa menggunakan metode berikut:
Menghapus semua klip utama saat ini di clipboard.
Mengembalikan klip utama saat ini di clipboard.
Mengembalikan deskripsi klip utama saat ini di clipboard tetapi bukan salinan datanya.
Metode ini sudah usang. Gunakan getPrimaryClip () sebagai gantinya. Ini mengambil klip utama dan mencoba memaksanya ke string.
Mengembalikan nilai true jika saat ini ada klip utama di clipboard.
sumber
sumber
Coba kode berikut. Ini akan mendukung API terbaru:
sumber
Metode pembantu Kotlin untuk melampirkan klik untuk menyalin Teks pada TextView
Letakkan metode ini di suatu tempat di kelas Util. Metode ini melampirkan listener klik pada tampilan teks untuk Menyalin Konten textView ke clipText pada klik textView itu
sumber
Anda dapat melakukan fungsi salin ke clipboard ini saat acara tombol klik. jadi letakkan baris kode ini di dalam tombol onClickListerner Anda
sumber
Cukup tulis kode ini:
sumber
clipboard
. Tapi terima kasih untuksetText
. Itu sudah usang, jadi gunakanval clip = ClipData.newPlainText(null, text) clipboard.setPrimaryClip(clip)
.Untuk Kotlin
sumber