performClick()不会激活选择器

时间:2013-04-04 10:16:43

标签: android button radio-button css-selectors

我用一个放置两个按钮的无线电组创建了一个布局。然后我有了一个可绘制的选择器。

我使用android:backgroundandroid:button应用选择器来移除小圆圈。

在onCreate方法中,我通过button.performClick()按一个按钮,但按钮的布局不会改变。即使我打电话给button.setChecked(true)它也不会改变。 实际上它在首次创建片段时有效。但是,如果我按下第二个按钮,加载另一个片段并返回后退按钮,仍然按下第二个按钮。

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {
    final View f = inflater.inflate(R.layout.fragment_season, container,
            false);

    final RadioButton bt = (RadioButton) f.findViewById(R.id.bu_season_tabelle);
    final RadioButton bs = (RadioButton) f.findViewById(R.id.bu_season_spielplan);

    bt.setOnClickListener(new OnClickListener() {

        public void onClick(View v) {
            setTabelle(f);
            v.setClickable(false);
            bs.setClickable(true);
        }
    });

    bs.setOnClickListener(new OnClickListener() {

        public void onClick(View v) {
            setSpielplan(f);
            v.setClickable(false);
            bt.setClickable(true);
        }
    });

    bt.performClick();

    return f;
}

如果有人可以帮助我会很好。

1 个答案:

答案 0 :(得分:0)

我找到了解决方案:

而不是在button.performClick()中调用onCreateView(),我必须在onStart()

中调用它