Кнопка для копирования значения строки в буфер обмена

Я модифицирую старое Android-приложение. У меня есть широта и долгота GPS, которая хранится в строковом значении и отображается пользователю в нередактируемом текстовом поле, когда оно разрешается. Я хочу добавить кнопку, которая просто берет значение строки и копирует его в буфер обмена.

мы смотрели на это:Как программно скопировать текст в моем приложении для Android?

Но не уверен, как это реализовать. Любая помощь будет отличнойВ последнее время в этой области многое коснулось развития!

Спасибо

Изменить: Я

    //Set button (inside oncreate method)
    Button button = (Button)this.findViewById(R.id.buttoncopylocation);
    button.setOnClickListener(this);

//Code added in onClick method
@Override
public void onClick(View arg0) {
    // TODO Auto-generated method stub
    ClipboardManager clipboard = (ClipboardManager)   getSystemService(Context.CLIPBOARD_SERVICE);
    ClipData clip = ClipData.newPlainText("Copied", mycoords);
    clipboard.setPrimaryClip(clip);
}

Я получаю эту ошибку:http://i.imgur.com/sQ4um.jpg

 Angelo.Hannes08 окт. 2012 г., 13:40
На какой уровень API вы ориентируетесь? ClipData доступен с уровня API 11. <
 GrumP08 окт. 2012 г., 13:23
@ Trickster I 'Я добавил код, чтобы помочь.
 Hassan Jawed08 окт. 2012 г., 12:49
Будет полезно, если вы разместите этот фрагмент кода, где вы хотите поместить текст в буфер обмена.
 Angelo.Hannes08 окт. 2012 г., 13:47
посмотри наэто обсуждение, смотрите такжеэтот для уточнения мин и целевой версии sdk
 GrumP08 окт. 2012 г., 13:42
Используется-SDK Android: minSdkVersion = "7" Android: targetSdkVersion =»11" />

Ответы на вопрос(2)

предоставить контекст, прежде чем

getSystemService(Context.CLIPBOARD_SERVICE);

лайк

Context context = ...;
ClipboardManager clipboard = (ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE);
Решение Вопроса

Если это просто текст, это очень просто.

ClipboardManager clipboard = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);
ClipData clip = ClipData.newPlainText("label","Your Text");
clipboard.setPrimaryClip(clip);

Для получения дополнительной информации проверитьэта ссылка

 GrumP08 окт. 2012 г., 13:39
Кажется, проблема с ClipData, OP отредактирован для ясности
 GrumP08 окт. 2012 г., 15:14
Это сработало, спасибо (хотя и немного изменилось): public void onClick (View arg0) {android.text.ClipboardManager clipboard = (android.text.ClipboardManager) getSystemService (CLIPBOARD_SERVICE); clipboard.setText (mycoords); Toast.makeText (getApplicationContext (), "Текст скопирован в буфер обмена ", Toast.LENGTH_SHORT) .show ();

Ваш ответ на вопрос