我想更改列表视图的字体大小。
我有一个从ActionBarActivity中提取的活动。 在此活动中,有一个列表视图和一个cursoradapter。 要设置适配器,我使用setlistadapter方法。在适配器中,我已经覆盖了newview和bindview方法。
下面是适配器的代码。
public EncCursorAdapter( final Context context, final Cursor c )
{
super( context, c, false);
// Cache the LayoutInflate to avoid asking for a new one each time.
mInflater = LayoutInflater.from(context);
}
@Override
public void bindView( final View view, final Context context, final Cursor cursor )
{
( ( TextView ) view.findViewById( R.id.tvTerm ) ).setText( cursor.getString( cursor
.getColumnIndex( EncDbAdapter.KEY_TERM ) ) );
( ( TextView ) view.findViewById( R.id.tvSynopsis ) ).setText( cursor.getString(
cursor.getColumnIndex( EncDbAdapter.KEY_DISPDEF ) ).replaceAll( "\r\n", "" ) );
}
@Override
public View newView( final Context context, final Cursor cursor, final ViewGroup parent )
{
final View newView = mInflater.inflate(R.layout.definition_row, parent, false );
//bindView( newView, context, cursor );
return newView;
}
我对listview有2个textview。其中1代表术语,另一代代表故事大纲。
以下是活动代码
public class Browse extends ActionBarListActivity{
private static ListView lCurrentList = null;
EncCursorAdapter eca;
@Override
public void onCreate( final Bundle savedInstanceState )
{
lCurrentList = (ListView) findViewById( android.R.id.list );
eca = new EncCursorAdapter( this, null );
}
private void setListToCursor( Cursor x )
{
mTermsCursor = new DebugCursor(x);
//startManagingCursor( mTermsCursor );
eca.changeCursor( mTermsCursor );
setListAdapter( eca );
}
以上代码不是完整代码...仅供参考。 我已经在使用搜索栏来更改webview内容的字体大小。但没有得到如何为listview做同样的事情。 请帮我用listbar更改listview的字体大小。
提前致谢.....
答案 0 :(得分:1)
在您的适配器中,使用一个变量来存储大小,如下所示
int size=15; //give how much you want
接下来,在适配器中再使用一个方法,使用适配器引用
从外部设置大小public void setSize(int size){
this.size=size;
}
在Adapter
的bindview()中( ( TextView ) view.findViewById( R.id.tvTerm ) ).setTextSize(size);
如果在onSeekBarChangeListener()中使用seekbar,请读取seekBar值并调用
adapter.setSize(size);
adapter.notifyDatasetChanged(); or adapter.changeCursor(-);
希望这会对你有所帮助。