我是意大利人,我是 android 语言的新手。请帮助我并原谅我非常糟糕的英语。我需要在我的 sqlite db 上使用 html 标签(如)。我插入了单词,但它们的显示方式就像写的一样(例如“047017661
X”)。我的页面代码是:
public class MainActivity extends Activity {
/** Called when the activity is first created. */
//Android listview object
// ListView listViewPhoneBook;
DBAdapter books;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
openDB();
//---add 2 titles---
/* if(books.getAllTitles().getCount()==0)*/ {//inserimento dati, solo se il db è vuoto
long id;
id = books.insertTitle(
"047028 <B5818>",
"C# 2008 Programmer's Reference",
"Wrox");
id = books.insertTitle(
"0470</br>17661<br/>X",
"Professional Windows </br>Vista Gadgets Programming",
"Wrox");}
populateListViewFromDB();}
private void openDB(){
books = new DBAdapter(this);
books.open();
}
private void closeDB(){
books.close();}
private void populateListViewFromDB() {
Cursor cursor = books.getAllTitles();
startManagingCursor(cursor);
String[] fromFieldNames = new String[]
{DBAdapter.KEY_ISBN};
int[] toViewIDs = new int []
{R.id.textView1};
SimpleCursorAdapter myCursorAdapter =
new SimpleCursorAdapter(
this,
R.layout.item_layout,
cursor,
fromFieldNames,
toViewIDs);
ListView myList = (ListView) findViewById(R.id.listViewFromDB);
myList.setAdapter(myCursorAdapter);
// TODO Auto-generated method stub
}
}
我必须在哪里插入一些东西来解码 html 标签?我搜索了类似“textView.setText(Html.fromhtml”)的内容,但我不明白该指令放在哪里。放入文件 xml?放入文件 Java?你能帮我吗?在这个网站上,我读了这篇文章:如果你的数据仅包含简单的 HTML 标记,它们实际上可以由 TextView 使用 Html.fromHtml(yourString) 处理。该静态方法返回一个 Spanned,它可以由 TextView 显示,其开销远低于 WebView。回答 Jan 11 ' 11 时 4:53 伊恩·克利夫顿
对不起,但我不知道我可以把这段代码放在哪里。我尝试扩展 TextView 但 setText 方法设置为最终方法。– 基兰 2011 年 1 月 12 日在 3:28
您不需要扩展 TextView,只需将 Html.fromHtml() 返回的 Spanned 传递给它,而不是 Cursor 中的 String。您可以扩展 SimpleCursorAdapter 并覆盖 setViewText 方法。
这对我上面的代码意味着什么?