2013-09-23 2 views
0

Я новичок в разработке приложений для Android. Я пытаюсь просмотреть мою базу данных, используя Textview в своей деятельности.setText() в текстовое представление из базы данных

Вот мой SetText() Java

@Override 
protected void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 
setContentView(R.layout.activity_viewlogs); 
TextView tv = (TextView) findViewById(R.id.tvSqlinfo); 
LogsDB info = new LogsDB(this); 
info.open(); 
ArrayList<String> data = info.getData(); 
info.close(); 
tv.setText(data); 
} 

Кажется, я получаю и ошибка при tv.setText (данные) ;. Заявив «Метод SetText (CharSequence) в типе TextView не применяется для аргументов (ArrayList)» Тогда, когда я сделать рекомендуемое исправить это меняет

tv.setText(data) 

в

tv.setText((CharSequence) data); 

Затем, когда я проверяю в приложении я получаю сообщение об ошибке, что его нельзя отличить. Что мне нужно изменить, чтобы иметь возможность просматривать мою базу данных в текстовом виде?

Любые советы и помощь будут очень признательны. Благодаря

+0

Вы можете использовать data.toArray(). ToString() – nedaRM

+0

'tv.setText (data)' не применимо для массива строки? и вы не можете передать список объекту CharSequence? вы можете передать некоторые строки в списке данных 'tv.setText (data.get (0))' 0 является индексом списка – Husam

+0

Устало, но теперь, когда значения базы данных должны быть такими, как «[email protected] « – ba2210

ответ

1

Если вы хотите сохранить его просто вы можете использовать

tv.setText(data.toString()); 

вместо

tv.setText(data); 

Он покажет что-то вроде этого: ([field1], [field2], ...)

+0

Я получил это, чтобы работать, есть ли способ, когда я добавляю вторую запись в мою базу данных, она появляется под первой записью. – ba2210

+0

Не могли бы вы объяснить немного подробнее? Я не понял ваш вопрос. –

+0

Вам нужно добавить с разрывом строки. См. [Этот ответ] (http://stackoverflow.com/questions/5382490/how-to-add-a-line-break-in-an-android-textview) – codeMagic

1

Вы, вероятно, хотите взять каждый String из ArrayList и добавить их в один String объект затем добавить, что к вашему TextView. Что-то вроде

String text = "These are my database Strings "; 
for (int i=0; i<data.size(), i++) 
{ 
    text = text.concat(data.get(i)); // might want to add a space, ",", or some other separator 
} 
tv.setText(text); 

и вы можете отделить String S однако вы хотите, чтобы они отображаются.

Смежные вопросы