首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在我的GridView中使用BaseAdapter,字号有时很大,有时很小

在GridView中使用BaseAdapter,可以通过设置字号来实现字号的大小变化。可以通过以下步骤来实现:

  1. 创建一个自定义的Adapter类,继承自BaseAdapter,并重写相应的方法。
  2. 在getView()方法中,获取到要显示的TextView,并设置其字号大小。
  3. 根据需要,可以通过条件判断来动态设置字号的大小。

以下是一个示例代码:

代码语言:java
复制
public class MyAdapter extends BaseAdapter {
    private Context mContext;
    private List<String> mData;
    private boolean mIsLargeFont;

    public MyAdapter(Context context, List<String> data, boolean isLargeFont) {
        mContext = context;
        mData = data;
        mIsLargeFont = isLargeFont;
    }

    @Override
    public int getCount() {
        return mData.size();
    }

    @Override
    public Object getItem(int position) {
        return mData.get(position);
    }

    @Override
    public long getItemId(int position) {
        return position;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        TextView textView;
        if (convertView == null) {
            textView = new TextView(mContext);
            textView.setLayoutParams(new GridView.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
        } else {
            textView = (TextView) convertView;
        }

        String item = mData.get(position);
        textView.setText(item);

        if (mIsLargeFont) {
            textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 20); // 设置字号为20sp
        } else {
            textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 12); // 设置字号为12sp
        }

        return textView;
    }
}

在使用这个Adapter的地方,可以根据需要传入不同的字号参数来控制字号的大小。例如:

代码语言:java
复制
List<String> data = new ArrayList<>();
data.add("Item 1");
data.add("Item 2");
data.add("Item 3");

boolean isLargeFont = true; // 是否使用大字号

MyAdapter adapter = new MyAdapter(context, data, isLargeFont);
gridView.setAdapter(adapter);

这样就可以根据需要在GridView中使用BaseAdapter,并动态设置字号的大小了。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

BaseAdapternotifyDataSetChanged方法

ListViewsetAdapter()函数,虽然ListView不是直接继承AdapterView,但是并不影响我们分析setAdapter机制,为了方便大家阅读,代码做一些注释: /*...总是分析而言,setAdapter方法会重置所有的数据,虽然能到达数据更新效果,但是对软件性能损耗很大,不建议这么做,也就是不建议大家频繁使用setAdapter函数来更新数据。...细心同学可能会发现,BaseAdapter以notify开头函数有四个,其实都是跟通知有关,但是前两个是Object函数实现,用于线程锁相关。我们只关心后两个。...值得一提是,这个函数Adapter类并不存在,是baseAdapter才出现。...而这两个函数实现确实在BaseAdapterBaseAdapter同时实现了ListAdapter和SpinnerAdapter接口,所以大家通常情况下只要使用baseAdapter就行了,BaseAdapter

1.1K30
  • Android之共享已安装apk应用

    2、安装到内存上非系统签名软件:/data/app 3、安装到sd卡上非系统签名软件:/mnt/asec/包名-数字/pkg.apk 我们可以使用re浏览器查看和分享这些apk,本人已确认过,...这些应用都是可用,但是这样子相当麻烦,因为你自己必须记得这三个位置,以及这三个位置对应存放应用,否则每次都要把三个文件夹浏览一次,多麻烦呀,程序就是为了让人们偷懒而生,因此废话不多说,下面贴出自己写可列出所有安装应用并能够通过蓝牙分享代码...: public class MainActivity extends Activity { GridView mGridView = null; List mAllApps...getMenuInflater().inflate(R.menu.activity_main, menu); return true; } class MyAdapter extends BaseAdapter...使用gridview把所有已安装用户应用列出来,但是没有做搜索,以后有时间肯定会加上,相信肯定会为你带来方便

    3.4K50

    android ListView item 插入 GridView 仿微信朋友圈图片显示。

    了,这里分了两个数据适配器,一个是自定义 listViewitem 风格xml,另一个是该风格xml文件里面的嵌套GridView数据适配。...listViewitem数据,我们称它为UserInfo,这里,说明下,因为每条 item 都有一个自己GridView,也就是说,UserInfo必须要有一个UserImgs类实例,用来存储图片信息...使用例子放置最后。 2,辅助类代码       声明,这两个辅助类,是根据自己项目所定义,大家可以据己所需,自行修改,思路掌握了,修改很简单、很快!...这个数据适配器是 GridView数据适配入口,GridView数据适配在它里面调用配置,必要代码注释已给出,其他都很容易理解。...GridView item 点击监听给去掉了,防止冲突,而且项目不需要。

    2.4K50

    手机卫士欢迎细节和主界面

    splash界面的细节 ctrl + O 搜索 去标题时候,对话框主题被去掉了,有点丑,现在既要有新版本对话框又不显示标题 把清单文件activity节点主题去掉 进入到application...对象setCancelable(false),强制升级时候 或者设置取消监听器 两种上下文区别 当显示对话框时候,如果使用getApplicationContext()来得到上下文,此时报错 BadTokenException...对话框是Activity一部分 对话框是挂载Activity上,Activity是Context子类 父亲类有的子类一定有 子类有的父类不一定有 XxxActivity.this生命周期短一点...,和activity一致,用多一点 getApplicationContext()生命周期长一点,和应用一致 应用程序主界面 九宫格布局,使用布局 GridView和ListView...对象setAdapter(adapter)对象,参数:Adapter对象 Adapter是接口,使用内部类继承BaseAdapter类来定义 定义文字数据,静态String[] names数组,{“手机防盗

    50620

    android 之 ListView 里面嵌套 GridView 遇到问题及其解决方法。

    答:      解决方法:      在你BaseAdapter里面不要设置下面这三个东西,然后再设置GridViewonItemClick。...gridView.setClickable(false);       gridView.setPressed(false); gridView.setEnabled(false); 2,为什么已经处理了...答:     原因:     GridView 格子View 有点击事件,证明你没阻断,之所以点击和图片同高度空白处没有执行 listView 点击事件是你GridView 霸占了整行,即使你格子只有一个...答:     原因/解决方法:     如果你 GridView 是某个View 子 View,例如你使用 LinearLayout 包裹 GridView,那么你GridView要设置 setLayoutParams...答:典型事件阻断,针对这种解决方法,百度上面大把解决方法。这里不罗嗦。 最终,项目的 ListView 嵌套 GridView效果是满足上述所有想要效果。

    1.5K50

    Android仿微信朋友圈图片选择器

    最近做开发需要解决一个模仿微信朋友圈附加图片功能,具体要求如下: (1)从手机中最多选择3张图片,可拍照上传; (2)选择图片可以点击移除然后再添加新图片; (3)可以在手机包含图片各个文件夹随意选择等...为了不过于冗余,过滤了部分布局文件和资源文件,在这里提供源码下载地址,有兴趣读者可以下载观看(注:使用 Android Studio 1.4 , SdkVersion 为23 ,小米note【Android...下面开始我们主要内容: 主界面布局activity_main.xml (主要使用一个GridView实现): <?xml version="1.0" encoding="utf-8"?...); } /** * 展示图片GridView适配器 */ class GridAdapter extends BaseAdapter { public LayoutInflater layoutInflater...)//设置图片加载/解码过程错误时候显示图片 .cacheInMemory(true)//设置下载图片是否缓存在内存 .cacheOnDisk(true) //设置下载图片是否缓存在SD卡

    1.4K20

    GridView结合tablayout实现展开收缩功能

    PS:最近有一些粉丝给我留言说怎么实现那种 上面多个item,然后可以展开收缩,当点击了item后下方会出现一些数据,而且item对应多个型号,当时看到这也就明白了他意思,上个图大家就明白了,这是腾讯云文章里一个...item分类后,如车,那么下方就要出现适合该车轮胎,对应多个厂家轮胎,就用tablayout来实现,这里效果图界面很丑,但功能是可以。...未命名.gif 实现步骤: 布局文件创建(由于上面图不是很清楚,这里就把全部布局代码) 自定义适配器 tablayout使用gridview折叠展开,并且调出数据 1:布局文件创建 这里需要注意是...是适配器item布局,里面只要一个textview,这里就略。...,gridview折叠展开,并且调出数据 实现展开收缩方法可能有很多,今天这个方法个人感觉还是简单易懂,就是获取到全部数据,然后再定义个只现实listRow用来存放显示数据,咱们是一行四列,所以

    3K80

    A021-列表容器之GridView

    概述 GridView是Android另一个列表容器,用法也跟ListView类似,它布局是一个网格,一行可以有多个项,并且整个视图可以滚动,我们常见应用有手机图库、launcher里面的应用列表...上面的运行结果就是GridView典型效果,每个item是一张固定大小图片,这里让它自适应屏幕来填充完整个屏幕宽度。...我们做了以下几件事: 1、初始化控件 2、定义图片资源mThumbIds 3、定义ImageAdapter 上面代码我们用到了ImageLoader这个图片加载框架,使用它来加载本地drawable...资源,实际开发中一般不会这样用,我们传进去uri是一个图片网络地址,具体使用方法可以百度学习,这里简单介绍步骤: 1、 初始化ImageLoader配置 2、获取ImageLoader实例,调用其displayImage...设置监听事件一样,这里不赘述,代码中使用图片来自官方,可以参考以下地址http://developer.android.com/intl/zh-cn/guide/topics/ui/layout/gridview.html

    76630

    Android 使用ContentProvider扫描手机图片,仿微信显示本地图片效果

    今天这篇文章使用是LruCache这个类(之前写了一篇使用LruCache加载网络图片Android 异步加载图片,使用LruCache和SD卡或手机缓存,效果非常流畅)以及对图片进行相对应裁剪...来通知主线程 然后是subGroupOfImage()方法,改方法是将mGruopMap数据组装到ListList存放GridView每个item数据对象ImageBean, 遍历HashMap...onLayout(), onDraw()等操作,这时候才能获取到Item宽和高,于是想到了自定义ImageView,onMeasure()利用回调模式主动通知ImageView测量宽和高...,可以getView()获取Item某个控件宽和高。...item跳转另一个界面来显示该文件夹下面的所有图片,功能跟第一个界面差不多,也是使用GridView来显示图片,第二个界面的布局代码就不贴了,直接贴上界面的代码 [java] view plain

    3.6K20

    C#-XamarinAndroid项目开发(二)——控件应用

    相信我,用Xamarin开发,你农耕社会还有个犁耙,用AS开发,你会发现你只能用手挖。。。。 GridView 首先,AndroidGridView见过最奇葩列表使用方式。。。...然后我们通过LayoutInflater(布局填充类),将xml布局文件实例化为它对应View对象,以供后续使用。 然后我们重写BaseAdapter一些属性和方法。...因为,至于为什么会叫GetView,想,大概是因为他即干了行绑定数据事,又干了行视图布局事,所以没有更合适命名,才这么叫吧。...这也是为什么感觉他奇葩原因,因为之前Activity和布局已经混淆了视图和数据,然后,控件里,我们又一次把数据和布局搅和在了一起。。。。 下面我们看看它是如何混淆,不,他是如何工作吧。...首先,在行导入GetView,我们找到要填充布局XML——activity_label_item.xml。

    1.3K40
    领券