SetContentView(Resource.Layout.activity_main);
// Create your application here
viewPapgeTitle = FindViewById<ViewPager>(Resource.Id.viewPager1);
viewLists = new List<View>();
LayoutInflater li = LayoutInflater;
viewLists.Add(li.Inflate(Resource.Layout.layout1, null, false));
viewLists.Add(li.Inflate(Resource.Layout.layout2, null, false));
viewLists.Add(li.Inflate(Resource.Layout.layout3, null, false));
titleList = new List<string>() {
"红褐色","黄色","白色"
};
adapter = new MyPagerAdapter2(viewLists, titleList);
viewPapgeTitle.Adapter = adapter;
////////////如何获取layout1布局下的button_layout1 按钮1
///////////////如何获取layout2布局下的button_layout2 按钮2
button_layout1 = FindViewById<Button>(Resource.Id.button_layout1);
button_layout2 = FindViewById<Button>(Resource.Id.button_layout2);
button_layout1 空 如何获取
button_layout1 空 如何获取
button_layout1 空 如何获取
题主写法:
button_layout1 = FindViewById<Button>(Resource.Id.button_layout1);
这种默认从 Layout.activity_main 布局中查找button_layout1,而button_layout1存在于Viewpager的View中。肯定会null
要做的就是从button_layout1 所在的父布局中查找(button_layout1)
更改写法如下,试试
LayoutInflater li = LayoutInflater;
View layout1=li.Inflate(Resource.Layout.layout1, null, false);
View layout2=li.Inflate(Resource.Layout.layout2, null, false);
View layout3=li.Inflate(Resource.Layout.layout3, null, false);
viewLists.Add(layout1);
viewLists.Add(layout2);
viewLists.Add(layout3);
titleList = new List<string>() {
"红褐色","黄色","白色"
};
adapter = new MyPagerAdapter2(viewLists, titleList);
viewPapgeTitle.Adapter = adapter;
////////////如何获取layout1布局下的button_layout1 按钮1
///////////////如何获取layout2布局下的button_layout2 按钮2
button_layout1 = layout1.FindViewById<Button>(Resource.Id.button_layout1);
button_layout2 = layout2.FindViewById<Button>(Resource.Id.button_layout2);