在片段中使用Android窗口动画

时间:2014-04-05 18:17:00

标签: android android-fragments

我有一个我正在使用的片段,里面有可滚动的标签。我在其中一个片段上有一个按钮,用于打开子活动。我想使用Android提供的翻译动画,但它给了我错误。

按钮onClickListener代码:

button.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View arg0) {
        Intent intent = new Intent(getActivity(), SubActivity.class);

        Bundle translateBundle = ActivityOptions.makeCustomAnimation(getActivity(),
        R.anim.slide_in_left, R.anim.slide_out_left).toBundle();

        startActivity(intent, translateBundle);
    }
});

Android Studio给了我这个错误:

startActivity (Intent) in Fragment cannot be applied to (Intent, android.os.Bundle)

我试过搜索S.O.对于这样的事情但没有找到任何东西。

非常感谢帮助!

2 个答案:

答案 0 :(得分:1)

编辑回答试试这个!!

  Intent intent = new Intent(getActivity(), SubActivity.class);

    startActivity(intent)

   getActivity().overridePendingTransition(R.anim.slide_in_left, R.anim.slide_out_left)

答案 1 :(得分:1)

您收到该错误是因为您使用的是Fragment没有包装器的支持库Context.startActivity(Intent intent, Bundle options)

相反,您可以使用Bundle

传递getActivity.startActivity(Intent, Bundle)
getActivity().startActivity(intent, translateBundle);

或者,您可以使用ActivityCompat.startActivity(Activity, Intent, Bundle