微信Tab页

2019-03-02 00:10|来源: 网路


 

 

参考开源项目PagerSlidingTabStrip

做了一些小修改,比如设置Tab页平均铺满效果、字体变色等 微调的代码请 下载

关于我


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
private void addTab(final int position, View tab) {
    tab.setFocusable(true);
    tab.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            pager.setCurrentItem(position);
        }
    });
     
    tab.setPadding(tabPadding, 0, tabPadding, 0);
    setShouldExpand(true);//设置weight=1.0f,实现平铺的效果,add by lichen
    if (tab instanceof TextView) {
        if (position == 0) {//默认首项字体颜色,add by lichen
            ((TextView) tab).setTextColor(getResources().getColor(R.color.deep_green));
        } else {//其他项字体颜色,add by lichen
            ((TextView) tab).setTextColor(getResources().getColor(R.color.light_green));
        }
    }
    tabsContainer.addView(tab, position, shouldExpand ? expandedTabLayoutParams : defaultTabLayoutParams);
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
        @Override
        public void onPageSelected(int position) {
            View view = tabsContainer.getChildAt(position);
            if (view instanceof ImageButton) {//如果是图片是Tab页,add by lichen
                ((ImageButton) view).setImageResource(R.drawable.ic_input_add);
            } else if (view instanceof TextView) {
                setColor(position);
            }
            if (delegatePageListener != null) {
                delegatePageListener.onPageSelected(position);
            }
        }
 
/**
 * 滑动tab修改字体颜色,by lichen
 * @param position
 */
private void setColor(int position) {
    TextView textView0 = (TextView) tabsContainer.getChildAt(0);
    TextView textView1 = (TextView) tabsContainer.getChildAt(1);
    TextView textView2 = (TextView) tabsContainer.getChildAt(2);
    switch (position) {
    case 0:
        textView0.setTextColor(getResources().getColor(R.color.deep_green));
        textView1.setTextColor(getResources().getColor(R.color.light_green));
        textView2.setTextColor(getResources().getColor(R.color.light_green));
        break;
    case 1:
        textView0.setTextColor(getResources().getColor(R.color.light_green));
        textView1.setTextColor(getResources().getColor(R.color.deep_green));
        textView2.setTextColor(getResources().getColor(R.color.light_green));
        break;
    case 2:
        textView0.setTextColor(getResources().getColor(R.color.light_green));
        textView1.setTextColor(getResources().getColor(R.color.light_green));
        textView2.setTextColor(getResources().getColor(R.color.deep_green));
        break;
    default:
        break;
    }
}

 


转自:http://my.oschina.net/lichen/blog/267220

相关问答

更多
  • 微信2下载[2023-08-16]

    您好,打开手机浏览器或者是应用商城,然后输入微信进行搜索,在搜索结果中下载安装这款软件即可
  • 主要是在交货前充分做好程序测试,是否能满足你的需求。 另外,售后服务一定要有保证,如果有更新协议的话最好确定更新时间和周期; 基本上就这样,最好选择一些信誉比较好的公司吧。企业开发微信小程序要明确自己的需求。 把需求提交给产品进行设计。 设计和开发做好小程序后提交审核最终上线。
  • 1. 微信小程序教程主要是前端技术。 2. 在学习下小程序的文档即可。
  • 开通微信商城的流程如下: 一、注册微信公众平台的服务号; 我们必须先注册微信公众平台的服务号,因为只有服务号才可能开通支付功能,实现线上的交易。至于如何申请微信公平台请参照我们的《微信公众号的申请和完善》。 二、微信认证服务号(申请公函); 进入微信公众平台之后点击右侧中设置的微信认证,如何搭建自己的微商城(上) 点击之后就会出现微信认证的界面 如何搭建自己的微商城(上) 微信认证 根据提示进行一步一步的认证,我们的公众号认证可以算是基本成型,不过认证的最后是要给腾迅缴纳300元认证费用的。认证通过之后,服 ...
  • 首先要申请个微信公众号,然后用第三方开发平台(这里建议用微速客微信点单系统)和公众号打通,就可以建立自己的微信店铺了。
  • 微信网络错误-1200指的是客户端本地错误,某个网络任务超时或者服务器连接出错以及服务器断开连接。 解决方法: 1、尝试更换网络接入点,比如由数据更换到WiFi。 2、检查微信版本,看是否是最新版,如果不是,建议先更新到最新版本。 3、将微信关闭,重启手机稍后再登录看是否能解决问题。 扩展资料 微信(WeChat)是腾讯公司于2011年1月21日推出的一个为智能终端提供即时通讯服务的免费应用程序,由张小龙所带领的腾讯广州研发中心产品团队打造。微信支持跨通信运营商、跨操作系统平台通过网络快速发送免费(需消耗少 ...
  • 自己开通不了,可以找美基营销代开通
  • 1. 看你的资源是如何的。 2. 如果有好的技术就可以开发小程序。 3. 如果自己有实体的企业可以开发一个自己的小程序。
  • 微信小程序”开发之前必须要完成和注册认证。 您好,开发微信小程序之前必须要完成注册认证,你也可以找微信第三方开发商,具体你可以百度一下。 微信小程序申请流程如下: 1. 进入微信公众平台官方网站,点击右上方“立即注册”。 2. 在选择注册账号类型的页面,点击左下方的“小程序”。 3. 填写需要注册的邮箱、密码以及验证码后,点击“注册”按钮。注意:需要之前没有在公众号注册过的邮箱,每个邮箱仅能申请一个小程序,填写完成以后会发送一封确认邮件到邮箱。 4. 登录注册用的邮箱,激活账号。 5. 接下来填写主题类型、 ...
  • 小程序本身是微信提供的一个平台,使用和注册都是不需要钱的(企业需要300认证费)。注册下来的名字也永久是你的,就是小程序你要用起来里面的功能是需要开发的,要么自己开发要么找第三方合作。