public class HSPTabletTestActivity extends Activity {
private class MyPagerAdapter extends PagerAdapter {
public int getCount() {
return 2;
}
public Object instantiateItem(View collection, int position) {
LayoutInflater inflater = (LayoutInflater) collection.getContext()
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
int resId = 0;
switch (position) {
case 0:
resId = R.layout.lighttab;
break;
case 1:
resId = R.layout.securitytab;
break;
}
View view = inflater.inflate(resId, null);
((ViewPager) collection).addView(view, 0);
return view;
}
@Override
public void destroyItem(View arg0, int arg1, Object arg2) {
((ViewPager) arg0).removeView((View) arg2);
}
@Override
public void finishUpdate(View arg0) {
// TODO Auto-generated method stub
}
@Override
public boolean isViewFromObject(View arg0, Object arg1) {
return arg0 == ((View) arg1);
}
@Override
public void restoreState(Parcelable arg0, ClassLoader arg1) {
// TODO Auto-generated method stub
}
@Override
public Parcelable saveState() {
// TODO Auto-generated method stub
return null;
}
@Override
public void startUpdate(View arg0) {
// TODO Auto-generated method stub
}
}
나는 ^^ ... 아주 많이 ... 나는 아직도 안드로이드 developement에의 세계에서 아주 새로운 해요 http://mobile.tutsplus.com/tutorials/android/android-user-interface-design-horizontal-view-paging/에서 직접 촬영까지가이 코드를 가지고 :/안드로이드 ViewPager findViewById를 작동하지 않습니다 - 항상 반환 널
이제 '회 전자 컨트롤'과 '페이지'내의 일부 버튼에 액세스하려고합니다. 하지만 findViewById는 null을 반환합니다!
레이아웃에 관한 내용이 실제로 코드 안에 존재하지 않으며 instantiateItem() 함수에서 먼저 발생되는 것과 같이 팽창되어야한다는 것을 기억합니다. 그리고 그것은 "view"변수로 들어가는 것이 꽤 분명합니다. 하지만 전화 할 때 view.findViewById (R.id.light1_off);
도중에 버튼이되어, 항상 제로가 돌아오고 있습니다! 실제로로드 된 페이지 일 때만 호출했는지 확인했습니다. 하지만 내가 한 일이 무엇이든, 항상 null을 반환하고 나쁘게 nullpointer 예외가 발생합니다.
누군가 나를 도와 줄 수 있습니까? 나는 아이디어가별로 없으며 Google은 도움이되지 않는다. 이미 약 10 가지 검색 용어로 5 페이지를 읽었다.
좋은 일을이 모든 더러운 작업 만 추가 된 setContentView (R.layout.youlayout)을 방지 할 수 있습니다! 이것은 정말 실망스런 문제였습니다. – Jackson
정말 환상적입니다! 감사합니다. – swati
어떻게 주요 활동에서 실제로 Button에 액세스합니까? –