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

如何在Listview中设置textview的背景色

在ListView中设置TextView的背景色可以通过自定义适配器来实现。以下是一个示例代码:

  1. 首先,在布局文件中定义ListView和TextView:
代码语言:txt
复制
<ListView
    android:id="@+id/listView"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

<TextView
    android:id="@+id/textView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:padding="10dp"
    android:textColor="#FFFFFF"
    android:textSize="16sp" />
  1. 创建一个自定义适配器类,继承自BaseAdapter,并重写getView方法:
代码语言:txt
复制
public class MyAdapter extends BaseAdapter {
    private Context context;
    private List<String> dataList;

    public MyAdapter(Context context, List<String> dataList) {
        this.context = context;
        this.dataList = dataList;
    }

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

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

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

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        View view = convertView;
        if (view == null) {
            LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            view = inflater.inflate(R.layout.list_item, null);
        }

        TextView textView = view.findViewById(R.id.textView);
        textView.setText(dataList.get(position));

        // 设置背景色
        if (position % 2 == 0) {
            textView.setBackgroundColor(Color.BLUE);
        } else {
            textView.setBackgroundColor(Color.GREEN);
        }

        return view;
    }
}
  1. 在Activity中使用自定义适配器设置ListView的适配器:
代码语言:txt
复制
public class MainActivity extends AppCompatActivity {
    private ListView listView;
    private List<String> dataList;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        listView = findViewById(R.id.listView);
        dataList = new ArrayList<>();
        dataList.add("Item 1");
        dataList.add("Item 2");
        dataList.add("Item 3");
        dataList.add("Item 4");
        dataList.add("Item 5");

        MyAdapter adapter = new MyAdapter(this, dataList);
        listView.setAdapter(adapter);
    }
}

这样,ListView中的TextView的背景色就会根据位置的奇偶来设置为蓝色和绿色。你可以根据自己的需求修改设置背景色的逻辑。

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

相关·内容

Android中TextView文字设置不同的颜色

在项目的过程中会遇到在一行文字中,部分功能需要不同的文字颜色来展示,下面介绍两种方式实现: 效果图: [wqs2rn595h.png] 这里写图片描述 方式一: 用SpannableStringBuilder...来实现 TextView tv=(TextView)findViewById(R.id.tv); String content = "只会玩战士回复冷云他大叔:啊哈哈哈或"; SpannableStringBuilder...builder = new SpannableStringBuilder(content); //ForegroundColorSpan 为文字前景色,BackgroundColorSpan为文字背景色...setSpan方法有四个参数,ForegroundColorSpan是为文本设置前景色,也就是文字颜色。如果要为文字添加背景颜色,可替换为BackgroundColorSpan。...: TextView tv=(TextView)findViewById(R.id.tv); String str="只会玩战士回复<font

9.8K20
  • TextView中DrawableXXX图片无法设置大小的解决方案

    在开发过程中我们往往会遇到图片旁边带文字的布局,这种布局有些比较Low的开发会直接用一个ImageView和TextView,有经验的会给TextView设置DrawableLeft、DrawableRight...等等属性,一个View搞定,但是这个属性设置图片是无法控制大小的,在xml里面,当然在Java代码里是可以设置的。...TextView textView = new TextView(mContext); Drawable drawable = getResources().getDrawable(R.drawable.icon_friend...); // 设置图片的大小 drawable.setBounds(0, 0, 20, 20); // 设置图片的位置,左、上、右、下 textView.setCompoundDrawables...(null, null, drawable, null); 当然,我们还可以用自定义View来实现这个效果,代码也是非常的简单 <!

    4.7K20

    Android开发:仿美团下拉列表菜单,帮助类,复用简单

    菜单收回,背景回复白色 自己主动给选定的选项加入背景色,假设下次选择的其它选项,背景色自己主动切换 回调菜单的选择项 假设你须要的是一级选择菜单,如上的功能是全然足够了,好了,一下是代码部分:...下拉菜单的帮助类:MenuHelper public class MenuHelper { private PopupWindow popupWindow; private ListView...= new ListView(mContext); listView.setDivider(null); listView.setDividerHeight(0); listView.setBackgroundColor...view) { textview = (TextView) view.findViewById(R.id.textView); } } }} 代码都比較简单,构造函数须要传的參数中的...你能够传或者设置null 以下是回调接口 public interface OnMenuClick { public void onPopupMenuClick(int position

    1.4K10

    Android ListView组件的使用

    Android已经给我们实现了一些常用的适配器,如刚刚使用的数组器,还有简单适配器等,如果这些不能满足,我们还可以通过自定义适配器来实现自己的适配器。...二:使用xml来自定义ListView 上个例子我们并没有使用在main.xml中定义一个ListView的形势来布局ListView,而是使用的ListActivity中默认的ListView来演示的...下面就使用我们在main.xml中自定义的ListView,这样我们可以很方便的控制ListView展示的布局,大小,背景色等属性。...当然上个例子中我们一样可以通过getListView获取ListView后使用它的方法来改变布局、大小和背景色等。 修改main.xml为: ListView的单击事件有两种方法,一个是使用getListView().setOnClickListener(l);设置,这个和平时我们用的控件设置是一样的,不做介绍,下面介绍第二个,就是重写

    1.2K10

    腾讯开源超实用的UI轮子库,我是轮子搬运工

    QMUIGroupListView 通用的列表,常用于 App 的设置界面,注意其父类不是 ListView 而是 LinearLayout,所以一般要配合 ScrollView 使用。...QMUILinkTextView 使 TextView 能自动识别 URL、电话、邮箱地址,相比 TextView 有以下特点: 可以设置链接的样式。 可以设置链接的点击事件。...QMUIWrapContentListView 支持高度值为 wrap_content 的 ListView,解决原生 ListView 在设置高度为 wrap_content 时高度计算错误的 bug...提供多个常用的工具方法,如获取状态栏高度、判断当前是否全屏等等。...提供多个常用的 View 相关工具方法,如对 View 设置单个方向的 padding、从 ViewStub 中获取一个 View、判断 ListView 是否已经滚动到底部等等。

    4.8K30

    Android开发笔记(三十八)列表类视图

    spinnerMode只能在xml中设置,不能在代码中设置。 代码中的方法: setPrompt : 设置标题文字。 setPromptId : 设置标题视图的资源ID。...该方式无需在代码中获取ListView的对象,直接调用setListAdapter方法设置适配器,同时实现ListActivity的点击方法onListItemClick来响应点击事件。...xml布局中ListView的id可自定义,页面的代码类继承自Activity。...该方式要从布局文件中获取ListView的对象,然后调用该对象的setAdapter方法设置适配器,并调用ListView对象的setOnItemClickListener方法来设置点击事件的监听器。...具体的说,就是给GridView设置整个网格的背景色(例如黑色),以及网格之间的水平间距和垂直间距;然后给每项网格的根布局设置背景色(例如白色),这样只有网格间距是黑色,从而间接画上了黑色表格线。

    2.4K20

    Android之CardView

    继承FrameLayout 一、常用属性 1、cardBackgroundColor 设置背景色 CardView是View的子类,View一般使用Background设置背景色,为什么还要单独提取出一个属性让我们来设置背景色呢...相同的原因,内部消耗掉了 padding 属性 4、cardElevation 设置阴影大小 5、cardUseCompatPadding 默认为false,用于5.0及以上,true则添加额外的 padding...随机抽取5名幸运用户,获得慕课网付费面试课程中的任意一门!")...以上保持一致 故cardUseCompatPadding设置为alse app:cardUseCompatPadding="true" ② 将5.0以下卡片间的距离,以及左右两侧我们看起来的距离变小 使用限定符...如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

    6.4K21

    Android开发之DrawerLayout实现抽屉效果

    使用注意点 1、DrawerLayout的第一个子元素必须是默认内容,即抽屉没有打开时显示的布局(如FrameLayout),后面紧跟的子元素是抽屉内容,即抽屉布局(如ListView)。...--可以在程序中根据抽屉菜单 切换Fragment--> <FrameLayout android:id="@+id/fragment_layout" android...widget.DrawerLayout> 这里存放的是ListView,下面会讲配合 Android M推出的NavigationView 遇到的问题 1、在点击DrawerLayout中的空白处的时候...由于Google的demo是一个ListView,所以ListView会获得焦点,事件就不会传递了,看不出来问题。但是如果用的include加载的布局,会出现这个情况,那么如何解决?...android:background="#123456" //设置一个背景色 android:orientation="vertical" android:padding="16dp

    7.2K60

    Android应用界面开发——ListView,GridView,ScrollView

    简单的说显示一个ListView的前提有:ListView布局、ListView中的item布局和Adapter,最后通过setAdapter将视图和数据绑定。...对于ListView的优化在后边的Demo中会提到。 ListView的常用属性: android:lsitSelector:设置列表项被点击时的背景色。...android:divider:设置列表项的分割线(既可以是颜色分隔也可以是Drawable分隔)。 android:dividerHeight:设置列表项的分割线的高度。...GridView常用属性: android:columnWidth:设置列的宽度。 android:numColumns:设置列数。...ListView实现关于微信界面Demo 在思考布局之前,这里先介绍一个很有用的功能,每个Android手机都有,那就是显示布局边界,这个功能可以通过设置->开发者模式->显示布局边界找到,打开这个功能可以看到手机里所有应用的布局了

    1.5K30

    【Flutter 专题】58 图解 Flutter 嵌入原生 AndroidView 小尝试

    中嵌入 Native View 的交互方式;Android 端采用 AndroidView iOS 端采用 UiKitView;和尚仅学习了 AndroidView 的基本用法; ?...Flutter 端 创建 AndroidView 并设置与原生相同的 viewType; return ListView(children: [ Container(child...; 两个 Container 背景色均未展示,和尚理解是 AndroidView 是填充满 Container 的,只是 AndroidView 中展示效果跟原生 View 尺寸相关; AndroidView...中未填充满的部分会展示白色或黑色背景色,与 Android 主题版本 或 设备 相关; 2. creationParams / creationParamsCodec creationParams...4. gestureRecognizers 针对不同的 View 需要的手势有所不同,上述 TextView 没有设置手势集合,默认支持点击,但对于 ListView 之类的需要滑动手势或长按点击的话则需要添加

    2.2K41

    —ListView+GirdView合集

    GridView 在二维滚动网格中显示项目的视图,它的继承属性与 ListView相似,并且 GridView的用法很多,主要凸显的是网格式布局,既有横向也有纵向的数据显示。...的拖动背景色 android:divider:可在列表项之间绘制的可绘制或颜色。...判断 convertView,为空则创建,并设置tag,否则通过tag来取出 ViewHolder 给 ViewHolder中的控件设置数据 最终效果如下: ?...Gridview的使用方法 ListView相似 1.这里新建一个 xml,命名为 activity_gridview.xml 中的代码,如下: 设置成“ @null”时,点击该 gridview中的某个 item时,会显示橘黄色的显示背景(android系统默认设置颜色),若想设置点击时无色(透明色,不用系统背景色),并设置自己的点击效果

    1.9K20

    A020-列表容器之ListView

    概述 前面介绍了Android UI中的五大布局容器,本节课介绍实际项目当中经常会用到的组件-ListView,它也是一个布局容器,它的每一项就是我们的列表项,每一个列表项都是一块独立的布局,我们可把数据填充到每一个列表项中...常见的功能需求有: 根据视觉稿搭建列表项UI 设置列表点击效果-selector 设置列表之间的间隔-dividerHeight 设置列表的分割线-divider 异步加载图片 下拉刷新最新列表数据 滑动到底部加载更多数据..."/> 常用属性说明: android:cacheColorHint=”#00000000” //设置拖动背景色为透明 android:dividerHeight...(true);的效果是一样的,不活动的时候隐藏,活动的时候也隐藏 第七fadeScrollbars属性,android:fadeScrollbars=”true” 配置ListView布局的时候,设置这个属性为...最后 关于ListView的用法基本上就是这样了,实际开发中,单纯使用系统提供的ListView控件是满足不了我们的需求的,因为大部分界面都可能没那么简单,比如需要下拉刷新、加载更多这样的效果,这时我们可以使用优秀的开源控件来实现这样的效果

    70930

    安卓开发个人小作品(3) – 多功能音乐播放器

    所在的activity里,调用工具类获取音乐集合,构造适配器,给Listview设置适配器,即可在Listview中显示本地所有的音乐啦,关键代码就三行,如下 List list = MusicUtils.getMusicData...自定义seekbar,需要在布局中设置progressDrawable和thumb,分别对应进度条的背景和进度条的指示小图标,我这里进度条的背景采用的是drawable,代码如下 的使用,代码很简单,就不贴了 6.播放列表背景图设置与保存 设置播放列表背景也就是调用一下,listview.setBackground即可,但是我们如果不进行保存的话...,我设置了四个主题,每个主题中,我都对attrs中定义的属性进行了具体的赋值,然后怎么使用呢,举个例子,比如我现在需要让popupwindow的背景色随主题改变而更换,那么在popupwindow的布局中...,便采用了这种方式,最后效果如下 看上去就像一个dialog,其实是一个activity,然后在这里根据用户的选择,来设置不同的主题,然后拿到主题的类型之后,在代码中根据这个值去判断应该显示哪个主题,

    1.6K30

    良心教程 | 如何在Typora中设置免费的图床

    设置好之后,写一篇教程,记录一下。 ❞ 「秀技能」 ❝今天同事发给我一个md文件,一如往昔,图片没有显示出来,我说又到了我安利给你图床的时候了,「免费」,「快速」,「粘贴后自动上传」,这三点不香吗。...这样,在Typora中书写,在markdown nice中渲染,然后复制到知乎和公众号上,非常流畅,多年的梦想终于实现了。闭环的感觉,别提多爽了,哈哈 ❞ 1....无论是免费的图库,还是将项目放上面,还是将电子书放上面,还是将博客放上面,都非常方便。后面我介绍如何在上面使用bookdown写书。 ❞ 2....新建gitee项目 ❝飞哥注:这里主要是设置秘钥,然后copy到PicGo中,就可以自动关联了。 ❞ 点击个人头像,点击设置: ?...设置PicGo ❝飞哥注:注意这里repo中要填写用户名+项目名,不要有http,不要有git,比如dengfei2013/tuku ❞ 打开PicGo,找到图床设置,找到gitee,填写相关信息 repo

    6.3K10

    Android ListView那些事

    ListView绘制它的child时,会导致child与window的背景色相混合,当ListView上下滑动或Fling时,性能就会下降。...假如你的item是一个TextView,你将其背景设置为白色,那么当按钮一个item是时,selector就不会显示出来了,因为它是绘制在所有item的下面。...Focus,也就是说我们可以通过将ListView中Item中包含的所有控件的 focusable属性设置为false,这样的话ListView的Item自动获得了Focus的权限,也就可以被选中了。...Focus的权限,不需要针对Item Layout中的每一个控件重新设置focusable属性了,如此就可以顺利的响应onItemClickListener中的onItemClick()方法了。...总结如下: 原因: ListView中的Item内部的View获得了焦点,如Button, Checkbox等。

    45620
    领券