请教:android中fragment中的一个按钮怎么调用一个新的activity😂
请教:android中fragment中的一个按钮怎么调用一个新的activity😂😂😂刚入门的小白...
请教:android中fragment中的一个按钮怎么调用一个新的activity😂😂😂刚入门的小白
展开
2016-03-29
展开全部
我想楼上的意思是:
Intent intent = new Intent(getActivity() , xxxActivity.class);
getActivity.startActivity(intent);
至于为什么这么写,是因为startActivity()方法是Context类的方法,而Activity是Context的子类,所以你要调用startActivity()方法,要先拿到你的Fragment所在的Activitiy的对象,所以通过Fragment的getActivity()来拿到Activity的对象。有点乱,你自己体会一下吧。
Intent intent = new Intent(getActivity() , xxxActivity.class);
getActivity.startActivity(intent);
至于为什么这么写,是因为startActivity()方法是Context类的方法,而Activity是Context的子类,所以你要调用startActivity()方法,要先拿到你的Fragment所在的Activitiy的对象,所以通过Fragment的getActivity()来拿到Activity的对象。有点乱,你自己体会一下吧。
更多追问追答
追问
我试了,可是不行,有人说用广播,可是我还不会
~(๑ñ﹏ ⊙☆)ノ凌乱
追答
噢,我看了一下你的代码,写法有问题,你的onCreateView()方法应该这么写:
public View onCreateView(...){
View view = inflater.inflate(R.layout.xxx , container , null);//这里要写在前面
b1 = (ImageButton)view.findViewById(R.id.subject);//因为b1要通过view来找到
b1.setOnClickListener(//设置点击事件
...
Intent intent = new Intent(getActivity() , xxxActivity.class);
getActivity.startActivity(intent);
...
);
return view;//这里别忘记了将上面的view返回
}
关键是你的Button要通过你加载的布局文件得到的view来找到,不然会报错
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询