Tap*_*tro 5 java clipboard android
我如何从剪贴板获取数据。我想获取数据并在 toast 中显示。意思是在我的 android 手机中的任何编辑文本中.. 什么时候长按并复制一些字符串值.. 那应该是 toast。我怎样才能做到这一点?在我得到的每个教程中,他们从指定的 editText 复制。我想在我手机的任何地方复制一些文本..我只需要评估那个特定的字符串......而且clipboard.getText();也不起作用。
我试过
public class ClipBoardDataManager extends BroadcastReceiver {
public ClipBoardDataManager() {
}
@Override
public void onReceive(Context context, Intent intent) {
String callNumber = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER);
ClipboardManager clipboard = (ClipboardManager) ctx.getSystemService(Context.CLIPBOARD_SERVICE);
ClipData myClip = ClipData.newPlainText("text", clipboard.getText());
clipboard.setPrimaryClip(myClip);
ClipData abc = clipboard.getPrimaryClip();
ClipData.Item item = abc.getItemAt(0);
Toast.makeText(ctx,item.toString(),Toast.LENGTH_SHORT).show();
}
}
Run Code Online (Sandbox Code Playgroud)
并注册。
IntentFilter intentFilter1 = new IntentFilter(String.valueOf(Intent.FILL_IN_CLIP_DATA));
ctx.registerReceiver(clipBoardDataManager,intentFilter1);
Run Code Online (Sandbox Code Playgroud)
我还是不明白..请帮忙!!!
ClipboardManager clipBoard = (ClipboardManager)getSystemService(CLIPBOARD_SERVICE);
clipBoard.addPrimaryClipChangedListener(new OnPrimaryClipChangedListener() {
@Override
public void onPrimaryClipChanged() {
ClipData clipData = clipBoard.getPrimaryClip();
ClipData.Item item = clipData.getItemAt(0);
String text = item.getText().toString();
// Access your context here using YourActivityName.this
}
});
Run Code Online (Sandbox Code Playgroud)
val clipBoardManager = context.getSystemService(CLIPBOARD_SERVICE) as ClipboardManager
clipBoardManager.addPrimaryClipChangedListener {
val copiedString = clipBoardManager.primaryClip?.getItemAt(0)?.text?.toString()
// Your code
}
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助
| 归档时间: |
|
| 查看次数: |
5801 次 |
| 最近记录: |