最新版的android 怎么对MainActivity.java中怎么对fragment_main.xml中的组件进行操作
privateButtonbutton;@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.on...
private Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button) this.findViewById(R.id.button1);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
}
});
像这样写会报出button空指针
button是在fragment_main.xml中定义的
求大神指教在MainActivity.java中对fragment_main.xml中的组件进行操作的方法 展开
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button) this.findViewById(R.id.button1);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
}
});
像这样写会报出button空指针
button是在fragment_main.xml中定义的
求大神指教在MainActivity.java中对fragment_main.xml中的组件进行操作的方法 展开
3个回答
展开全部
只有一个错误,就是button要在activity_main.xml中定义,以为你加载的是R.layout.activity_main
我知道你说的这种情况,就是新建的工程会有两个文件目录,是吧?其实,可以完全按以前的操作就行,不要管多出来的另一个目录 好像是v7版本的支持框架。也不要删除或者关闭,否则会报错,就在activity_main.xml中定义所用 视图组件就行了,然后再onCreate()方法中加载。
我知道你说的这种情况,就是新建的工程会有两个文件目录,是吧?其实,可以完全按以前的操作就行,不要管多出来的另一个目录 好像是v7版本的支持框架。也不要删除或者关闭,否则会报错,就在activity_main.xml中定义所用 视图组件就行了,然后再onCreate()方法中加载。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你在onStart()方法中这样写就行了
fragment为你activity中添加的fragment对象,button=(Button)fragment.getView().findViewById(R.id.button1);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
}
});
你这样就不会报错了
fragment为你activity中添加的fragment对象,button=(Button)fragment.getView().findViewById(R.id.button1);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
}
});
你这样就不会报错了
追问
fragment对象怎么在activity中获得??
追答
那个是你自己创建的啊, 你在oncreate()中创建的时候把他保存为全局变量就行了。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
为什么不在Fragment的类里面去操作呢?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询