WEB开发网
开发学院手机开发Android 开发 基于Android的英文电子词典开发实例 阅读

基于Android的英文电子词典开发实例

 2010-08-11 10:34:00 来源:WEB开发网   
核心提示:{TextView tvWordItem = (TextView) view;tvWordItem.setText(cursor.getString(cursor.getColumnIndex("_id")));}@Overridepublic void bindView(View view, Co

{

TextView tvWordItem = (TextView) view;

tvWordItem.setText(cursor.getString(cursor.getColumnIndex("_id")));

}

@Override

public void bindView(View view, Context context, Cursor cursor)

{

setView(view, cursor);

}

@Override

public View newView(Context context, Cursor cursor, ViewGroup parent)

{

View view = layoutInflater.inflate(R.layout.word_list_item, null);

setView(view, cursor);

return view;

}

public DictionaryAdapter(Context context, Cursor c, boolean autoRequery)

{

super(context, c, autoRequery);

// 通过系统服务获得LayoutInflater对象

layoutInflater = (LayoutInflater) context

.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

}

}

在编写DictionaryAdapter类时应注意如下3点:

1. 为了将Cursor对象与AutoCompleteTextView组件绑定, DictionaryAdapter类必须从CursorAdapter类继承。

2. 由于CursorAdapter类中的convertToString方法直接返回了Cursor对象的地址,因此,在 DictionaryAdapter类中必须覆盖convertToString方法,以返回当前选中的单词。CursorAdapter类中的 convertToString方法的源代码。

public CharSequence convertToString(Cursor cursor)

{

// 如果cursor不为null,返回Cursor对象的地址(cursor.toString())

return cursor == null ? "" : cursor.toString();

}

覆盖后的convertToToString方法的源代码如下:

public CharSequence convertToString(Cursor cursor)

{

return cursor == null ? "" : cursor.getString(cursor

.getColumnIndex("_id"));

}

在这里要注意一下,当选中AutoCompleteTextView组件中单词列表中某一个单词后,系统会用convertToString方法的返回值来设置AutoCompleteTextView组件中的文本。因此,必须使用Cursor的getString来获得相应的字段值。

上一页  1 2 3 4 5 6 7  下一页

Tags:基于 Android 英文

编辑录入:coldstar [复制链接] [打 印]
赞助商链接