Ir ao conteúdo
  • Cadastre-se

Tecprogram

Membro Júnior
  • Posts

    10
  • Cadastrado em

  • Última visita

Tópicos solucionados

  1. O post de Tecprogram em Necessito separar uma mensagem String em 6 TextViews no Android Studio foi marcado como solução   
    Estou fazendo um app com conexão bluetooth e ele captura as mensagens ou dados que são enviados pelo arduino via Bluetooth, estou enviando essas mensagens via Bluetooth, a cada chamada envia um dado e cada dado deveria ser mostrado no seu Textview específico, então como faço para direcionar esse dado para seu TextView específico? A troca de informações já acontece só que o único dado é enviado e aparece em todos os Textview não aparece em apenas um, e gostaria que fosse as informações separadas por exemplo temperatura em um e umidade em outro.
    /* * Função que envia a mensagem do celular para o módulo Bluetooth, exibindo no monitor serial. */ private void enviar(String str) { if(connected != Connected.True) { Toast.makeText(getActivity(), "Não conectado", Toast.LENGTH_SHORT).show(); return; } try { String msg; byte[] data; msg = str; data = (str + newline).getBytes(); SpannableStringBuilder spn = new SpannableStringBuilder(msg+'\n'); spn.setSpan(new ForegroundColorSpan(getResources().getColor(R.color.colorSendText)), 0, spn.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); receiveText.append(spn); service.write(data); } catch (Exception e) { onSerialIoError(e); } } //Envia a mensagem para o receptor, ou seja, o celular... do arduino para o celular private void receptor(byte[] data) { String msg = new String(data); /* if(newline.equals(newline_crlf) && msg.length() > 0) { // não mostra CRLF como ^M se diretamente antes de LF msg = msg.replace(newline_crlf, newline_lf); // tratamento especial se CRLF e LF vierem em fragmentos separados if (pendingNewline && msg.charAt(0) == '\n') { Editable edt = receiveText.getEditableText(); if (edt != null && edt.length() > 1) edt.replace(edt.length() - 2, edt.length(), ""); } pendingNewline = msg.charAt(msg.length() - 1) == '\r'; }*/ humidadeSolo.append(TextUtil.toCaretString(msg, newline.length() != 0)); receiveText.append(TextUtil.toCaretString(msg, newline.length() != 0)); } Este outro Trecho de código trata a informação recebida para ser exibida no Textview, mais qual tratamento eu deveria empregar para fragmentar essa mensagem em duas partes ou mais e eu destina-la para seus TextViews respectivos, Me ajudem por favor...
    static CharSequence toCaretString(CharSequence s, boolean keepNewline) { return toCaretString(s, keepNewline, s.length()); } static CharSequence toCaretString(CharSequence s, boolean keepNewline, int length) { boolean found = false; for (int pos = 0; pos < length; pos++) { if (s.charAt(pos) < 32 && (!keepNewline ||s.charAt(pos)!='\n')) { found = true; break; } } if(!found) return s; SpannableStringBuilder sb = new SpannableStringBuilder(); for(int pos=0; pos<length; pos++) if (s.charAt(pos) < 32 && (!keepNewline ||s.charAt(pos)!='\n')) { sb.append('^'); sb.append((char)(s.charAt(pos) + 64)); sb.setSpan(new BackgroundColorSpan(caretBackground), sb.length()-2, sb.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); } else { sb.append(s.charAt(pos)); } return sb; } Fico muito agradecido se alguém puder me dar essa luz...

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!