2 liu344822 liu344822 于 2016.04.20 12:43 提问

java AS新手求助。以下是代码:

setOnCheckedChangeListener方法参数类型不匹配

ackage gke_code_jrxd.Demo.ui;

import android.app.Activity;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentTransaction;
import android.widget.CompoundButton;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.RadioGroup.OnCheckedChangeListener;

import gke_code_jrxd.Demo.BuildConfig;
import gke_code_jrxd.Demo.R;
import gke_code_jrxd.Demo.ui.index.FunnyFragment;
import gke_code_jrxd.Demo.ui.index.IndexFragment;
import gke_code_jrxd.Demo.ui.index.NewsFragment;
import gke_code_jrxd.Demo.ui.widget.TitleBar;

import butterknife.Bind;
import butterknife.ButterKnife;

public class MainActivity extends FragmentActivity {

@Bind(R.id.titleBar)
TitleBar titleBar;

@Bind(R.id.rgTabBar)
RadioButton rgTabBar;

@Bind(R.id.rbTabIndex)
RadioButton rbTabIndex;

@Bind(R.id.rbTabNews)
RadioButton rbTabNews;

@Bind(R.id.rbTabFunny)
RadioButton rbTabFunny;

IndexFragment mIndexFragment = new IndexFragment();
NewsFragment mNewsFragment = new NewsFragment();
FunnyFragment mFunnyFragment = new FunnyFragment();

@Override
protected void onCreate(Bundle savedInstanceState) {

// this.requestWindowFeature(Window.FEATURE_NO_TITLE);//去除标题栏

    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    ButterKnife.bind(this);
    titleBar.setTitle("首页");
    titleBar.setLeftTextLeftDrawable("", 0);
    addFragment();

rgTabBar.setOnCheckedChangeListener(mOnCheckedChangeListener);

    // rgTabBar.check(R.id.rbTabIndex);
    // 在这里为什么不用 check(R.id.rbTabIndex)默认选中第一项,是因为y
    // mOnCheckedChangeListener事件会执行多次,所以弃用它,
    // 直接让第一个RadioButton设置选中解决该问题
    rbTabIndex.setChecked(true);
}

/**
 * 首页tab索引
 **/
final int TAB_INDEX = 0;
/**
 * 今日新闻tab索引
 **/
final int TAB_NEWS = 1;
/**
 * 今日笑点tab索引
 **/
final int TAB_FUNNY = 2;
/**
 * 当前展示的tab索引
 **/
int mCurShowFragmentIndex;
/**
 * tab选项卡监听器
 */
RadioGroup.OnCheckedChangeListener mOnCheckedChangeListener = new RadioGroup.OnCheckedChangeListener() {

    @Override
    public void OnCheckedChanged(RadioGroup group,int checkedId) {
        switch (checkedId) {
            case R.id.rbTabIndex:
                changeTab(TAB_INDEX);
                break;
            case R.id.rbTabNews:
                changeTab(TAB_NEWS);
                break;
            case R.id.rbTabFunny:
                changeTab(TAB_FUNNY);
                break;
        }
    }
};
public void addFragment() {
    FragmentTransaction transaction = getSupportFragmentManager()
            .beginTransaction();
    transaction.add(R.id.flContent, mIndexFragment);
    transaction.add(R.id.flContent, mNewsFragment);
    transaction.add(R.id.flContent, mFunnyFragment);
    transaction.commit();

    showFragment(TAB_INDEX);
}

/**
 * 切换 tab选项卡
 * @param tabItem
 */
public void changeTab(final int tabItem) {
    switch (tabItem) {
        case TAB_INDEX:
            titleBar.setTitle("首页");
            mCurShowFragmentIndex = TAB_INDEX;
            showFragment(TAB_INDEX);
            break;
        case TAB_NEWS:
            titleBar.setTitle("今日新闻");
            mCurShowFragmentIndex = TAB_NEWS;
            showFragment(TAB_NEWS);
            break;
        case TAB_FUNNY:
            titleBar.setTitle("今日笑点");
            mCurShowFragmentIndex = TAB_FUNNY;
            showFragment(TAB_FUNNY);
            break;
    }
    //showFragment(mCurShowFragmentIndex);
}
/**
 * hide所有的fragment
 */
private void hideFragment() {
    FragmentTransaction transaction = getSupportFragmentManager()
            .beginTransaction();
    transaction.hide(mIndexFragment);
    transaction.hide(mNewsFragment);
    transaction.hide(mFunnyFragment);
    transaction.commit();
}
/**
 * show选中的fragment
 *
 * @param tab
 */
public void showFragment(final int tab) {
    hideFragment();
    FragmentTransaction transaction = getSupportFragmentManager()
           .beginTransaction();
    switch (tab) {
        case TAB_INDEX:
            transaction.show(mIndexFragment);
            break;
        case TAB_NEWS:
            transaction.show(mNewsFragment);
            break;
        case TAB_FUNNY:
            transaction.show(mFunnyFragment);
            break;
    }
    transaction.commit();
}

}

2个回答

CSDNXIAON
CSDNXIAON   2016.04.20 12:52

as3.0纯新手跟着学
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

qq_34688538
qq_34688538   2016.04.20 12:56
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
Java源码:比较经典的一些Java源代码,适合于初学者
Java源代码:收录了比较经典的140个Java源代码程序,适合Java初学者
java 预览 两种方法 每种只需一句话 绝对简单 实例
java 预览 两种方法 每种只需一句话 绝对简单 实例 java 预览 两种方法 每种只需一句话 绝对简单 实例
数据求助求助求助
的奋斗奋斗奋斗奋斗双方的首发第三方
Java 课程设计
1. 输出50—100间的所有素数,其中判断一个数是否为素数用函数完成。 2. 设计一个学生成绩管理系统,能输入学生的学号、姓名和成绩等数据,能按成绩从高到低进行排序,并能将排序的结果输出。 提示: 设计一个学生类student,包含三个私有数据成员,即学号sno、姓名sname和成员score; 在学生类student中再设计三个方法 setdata、display和getscore,分别用于完成输入学生信息、输出学生信息、返回某个学生成绩的功能; 定义一个manage类,它有一个student类型的私有数据成员s[num],其中num表示学生人数; 在manage类中分别定义三个方法input、output、sort,分别用于完成输入、输出和排序功能。 3.一个电子产品商店里卖各种电子产品,以下是几种产品类信息。 产品Product 的属性信息包括: 产品号(number) 种类(category) 名称(name) 价格(price ) 计算机Computer除具有产品基本信息外,还可能具有下面的属性: 内存(memory) 处理器(processorName)   笔记本电脑Laptop 除具有产品基本信息外,还可能具有下面的属性: 厚度(thickness) 重量(weight) 根据以上信息,首先抽象出类Product,它派生出子类Computer,Computer又派生出它的子类Laptop,实现以上三个类的定义,定义相应的构造方法,声明一个测试类,生成类对象,并把打印结果显示在屏幕上。
适合于初学者的java小程序之3
求1+2!+3!+...+20!的和 利用递归方法求5!。 有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大? 给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。:一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。 请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续 判断第二个字母 求100之内的素数 对10个数进行排序 求一个3*3矩阵对角线元素之和
Java基础ppt
Java基础PPT,新手可以下载来看下,挺不错的。
Java程序设计语言考试试题
一、单项选择题(本大题共10小题,每小题1分,共10分) 1.下述字符组合不能作为Java程序标识符的是(   ) A.Aa12 B.大x C.y小 D.5x 2.以下程序代码的输出的结果是(   ) int x=53; System. out. println(1.0+x/2); A.27.0 B.27.5 C.1.026 D.1.026.5 3.参照以下Java代码,以下四个叙述中最确切的是(   ) class A{ int x; static int y; void fac(String s){Syatem. out. println("字符串:"+s);} } A.x、y和s都是成员变量 B.x是实例变量、y是类变量、s是局部变量 C.x和y是实例变量、s是参数 D.x、y和s都是实例变量 4.需要分析字符串,并将字符串分解成可被独立使用的单词,可使用java. util包中的类是 (   ) A.String B.StringBuffer C.StringTokenizer D.stringTokenizer 5.要为程序的子窗口设定一个由字符串s指定的名字,可以采用的代码是(   ) A.JFrame(s) B.window(s) C.new JFrame(s) D.super(s) 6.以下关于菜单的叙述中,正确的是(   ) A.菜单分三级定义,最高一级的是菜单条,菜单条中放菜单,菜单中放菜单项 B.菜单分三级定义,最高一级的是菜单,菜单中放菜单条,菜单条中放菜单项 C.菜单分两级定义,最高一级的是菜单,菜单中放菜单项 D.菜单分两级定义,最高一级的是菜单条,菜单条中放菜单项 7.以下所述内容全部是字型要素的是(   ) A.字体、字形和大小 B.字体、风格和字号 C.字形、风格和字号 D.字形、颜色和字号 8.用Thread子类实现多线程的步骤顺序是(   ) A.声明Thread类的子类,创建Thread子类的实例,让线程调用start()方法 B.声明Thread类的子类,在子类中重新定义run()方法,创建Thread子类的实例 C.创建Thread子类的实例,让线程调用start()方法 D.声明Thread类的子类,在子类中重新定义run()方法,创建Thread子类的实例,让线程调用start()方法
java求助
作业说明
Java新手练习题50道
JAVA菜鸟练手习题50道(有答案给大家参考的哟)
适合新手练手的项目 java初学者 视频+源码+笔记都有度娘链接永久有效
适合新手练手的项目 java初学者 视频+源码+笔记都有度娘链接永久有效