当我在片段B中时,如何模拟点击堆栈中活动中的按钮。
登录活动A=>碎片B。
我想模拟这样的东西:
LoginActivityA.btnClick((从碎片B
我尝试使用此票证,但没有成功:Ticket1、Ticket2、Ticket3
这是我的代码:
碎片B:
//BEGIN TEST
String message="hello ";
Intent intent = new Intent(getActivity(), LoginActivity.class);
intent.putExtra("MESSAGE",message);
getActivity().setResult(2,intent);
getActivity().startActivityForResult(intent,2);
getActivity().finish();//finishing activity
//END TEST
登录活动A:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
super.onActivityResult(requestCode, resultCode, data);
// check if the request code is same as what is passed here it is 2
if(requestCode==2)
{
//do the things u wanted
}
}
我准确地说,我尽量不让多个LoginActivity和Fragment启动。我只想获得一个带有LoginActivity=>Fragment 的堆栈
有什么想法吗?
编辑:
我尝试了这个技巧,但没有成功:
((LoginActivity)getActivity()).login();
我从出现错误的片段中启动了活动功能
"未找到可接受的模块。本地版本为0,远程版本为0.">
您可以使用一个带有onClick方法的接口,该方法由您的活动实现,然后在片段B中随时调用onClick,并将活动传递给它。
尽管我认为你所做的是错误的,你应该改变主意
这不是一个好的做法,但如果你愿意,你可以通过调用你的活动UI元素
((Button) getActivity().findViewById(R.id.button_id)).performClick();
永远记住,Android是一个很好的架构师平台,如果你想做一些困难的事情,也许你不应该做。重新思考你的设计模式。