我有一个我正在使用的片段,里面有可滚动的标签。我在其中一个片段上有一个按钮,用于打开子活动。我想使用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.对于这样的事情但没有找到任何东西。
非常感谢帮助!
答案 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
。