Ich sende und empfange Daten von einer Android App zu einem Arduino mit dem USB. Die Daten, die ich aus dem Arduino erhalten, ist in byte[]
Form:Byte [] in Snackbar nicht visualisieren
UsbSerialInterface.UsbReadCallback mCallback = new UsbSerialInterface.UsbReadCallback() { //Defining a Callback which triggers whenever data is read.
@Override
public void onReceivedData(byte[] arg0) {
String data = null;
try {
data = new String(arg0, "UTF-8");
displaySnackbar(data);
data.concat("/n");
tvAppend(textView, data);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
};
ich in der Lage bin, die alle Daten in einem TextView
mit dem tvAppend Verfahren erhalten setzen:
private void tvAppend(TextView tv, CharSequence text) {
final TextView ftv = tv;
final CharSequence ftext = text;
runOnUiThread(new Runnable() {
@Override
public void run() {
ftv.append(ftext);
}
});
}
Aber ich kann nicht verwalten setzen Anzeige die Daten auf eine Snackbar
...
public void displaySnackbar(CharSequence data){
View parentLayout = findViewById(R.id.activity_usb);
data="hola "+data.toString()+ " end";
Snackbar.make(parentLayout, data, Snackbar.LENGTH_LONG)
.setAction("Action", null)
.show();
Wie kann ich die Datenvariable, um transformieren, um sie anzuzeigen mit einer Snackbar in der Lage sein?
Ich fühle mich wie ich etwas vermisse, aber ich weiß nicht was ... danke im Voraus!