目前,我主要使用Fragments连接到Facebook。
但是,对于其他代码,我使用的是普通的活动(没有碎片)。
我现在的问题是我希望有一个按钮可以从我的"主页"到片段,从片段回到我的主页"
我无法这样做。
我尝试使用相同的代码在此之间切换活动,但它不起作用。
有没有办法将正常活动链接到碎片和反之亦然?或者他们只能相互链接?
这是我的代码:
public class SplashFragment extends Fragment{
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.splash, container, false);
// return view;
Button btnNextScreen = (Button) view.findViewById(R.id.btnNextScreen);
// Button btnNextScreen = (Button) findViewById(R.id.btnNextScreen);
//Listening to button event
btnNextScreen.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
//Starting a new Intent
Intent nextScreen = new Intent(**getApplicationContext()**, SecondScreenActivity.class);
startActivity(nextScreen);
}
});
return view;
}
}
我在getApplicationContext()时遇到错误。
如果我将其更改为getActivity(),则会提示他们希望切换到片段而不是活动的其他错误。
感谢您的帮助!
此致 AndroidStudent
答案 0 :(得分:1)
如果你想从片段导航到活动,请使用此getActivity()。
Intent nextScreen = new Intent(getActivity(), SecondScreenActivity.class);
startActivity(nextScreen);
答案 1 :(得分:0)
这样做:
Intent i = new Intent(getActivity(), activityname.class);
i.putExtra("key", value);
getActivity().startActivity(i);
答案 2 :(得分:0)
就我而言,我也无法从片段中找到该类,然后编写此代码,它可以工作; 公共类用户配置文件扩展了片段{
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
final View view = inflater.inflate(R.layout.fragment_userprofile, container, false);
final ImageView iconoptions = view.findViewById(R.id.iconoptions);
iconoptions.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(getActivity(),com.example.miniproject. options.class));
}
});
return view;
}
}