デバイスからデータを読み取る asynctask があり、このデータを TextView に表示したいと考えています。アプリケーションに ScrollView があり、その中に TextView があります。textview は手動でスクロールしていますが、更新の進行状況で最後の行の位置を更新する必要があります。ここに私の Asynctask コードがあります
private class ReadDataTask extends AsyncTask<Void, String, String>{
/* (non-Javadoc)
* @see android.os.AsyncTask#onProgressUpdate(Progress[])
*/
@Override
protected void onProgressUpdate(String... values) {
String frm=values[0];
Log.d("bluetoothdata", frm);
if(logtextview.getText().length()>(1024*1024)){
logtextview.setText(frm);
}else{
logtextview.append(frm);
}
// Toast.makeText(SetBluetoothActivity.this, "frame updated", Toast.LENGTH_SHORT).show();
}
@Override
protected String doInBackground(Void... params) {
while(connected){
String frame=readFrame();
publishProgress(frame);
}
return null;
}
}
必要なのは、テキストビューの最後の行が常に表示されるように配置することです。どんな助けでも大歓迎です