我正在研究基於測驗的應用程序。每個問題有4個選項。問題是一個文本視圖,而我使用viewpager的選項,以便用戶可以滑動將從服務器動態加載的4個選項。
我得到NullPointerException
佈局inflater。
這是我得到空值的行:佈局Inflater使用ViewPager拋出NullPointerException
LayoutInflater inflater = (LayoutInflater)
context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View itemView = inflater.inflate(R.layout.viewpager_item, container, false);
class MyAdapter extends PagerAdapter {
int NumberOfPages = 4;
Context context;
ArrayList<String> option1List; .....
幫助和指導表示高度讚賞。
Error :
E/AndroidRuntime:致命異常:主 顯示java.lang.NullPointerException 在quizapp.android.mohit.com.quizapp.MyAdapter.instantiateItem(Questions.java:485)
這裏是我的Mainactivity代碼:
public class Questions extends ActionBarActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_questions);
dbHelper = new DataBaseHelper(getApplicationContext());
viewPager = (ViewPager) findViewById(R.id.viewPager);
adapter = new MyAdapter(option1List, option2List, option3List,option4List);
viewPager.setAdapter(adapter);
class MyAdapter extends PagerAdapter {
int NumberOfPages = 4;
Context context;
LayoutInflater inflater;
View itemView;
ArrayList<String> option1List;
ArrayList<String> option2List;
ArrayList<String> option3List;
ArrayList<String> option4List;
public MyAdapter(ArrayList<String> option1List, ArrayList<String> option2List, ArrayList<String> option3List, ArrayList<String> option4List) {
this.option1List = option1List;
this.option2List = option2List;
this.option3List = option3List;
this.option4List = option4List;
}
public int getCount(){
return NumberOfPages;
}
public boolean isViewFromObject(View container, Object obj) {
return container == obj;
// return container == (View) obj;
}
public Object instantiateItem(ViewGroup container, int position) {
LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View itemView = inflater.inflate(R.layout.viewpager_item, container, false);
// Declare Variables
TextView option1, option2, option3, option4;
// Locate the TextViews in viewpager_item.xml
option1 = (TextView) itemView.findViewById(R.id.tv_option1);
option2 = (TextView) itemView.findViewById(R.id.tv_option2);
option3 = (TextView) itemView.findViewById(R.id.tv_option3);
option4 = (TextView) itemView.findViewById(R.id.tv_option4);
// Capture position and set to the TextViews
option1.setText(option1List.get(0));
option2.setText(option2List.get(0));
option3.setText(option3List.get(0));
option4.setText(option4List.get(0));
// Add viewpager_item.xml to ViewPager
container.addView(itemView);
return itemView;
}
public void destroyItem(ViewGroup container, int position, Object obj) {
container.removeView((LinearLayout)obj);
}
}
http://stackoverflow.com/a/20412475/1527458 – Dhina
什麼行錯誤發生在和你在哪裏聲明場「背景」? – barq
@barq:這是我得到空值的行: LayoutInflater inflater =(LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 查看itemView = inflater.inflate(R.layout.viewpager_item,container,false); class MyAdapter extends PagerAdapter {int {NumberOfPages = 4; 上下文上下文; ArrayList option1List; ..... –