android - ViewPager出現(xiàn)空指針的錯誤
問題描述
如何修改啊 有沒有知道的 大神 本人新手
在MainActivity中viewPager.setAdapter(viewPagerAdapter);后面設(shè)置
viewPager.setCurrentItem(1);
viewPager.setCurrentItem(0);
這兩個 都出錯誤 Caused by: java.lang.NullPointerException
public class NewsDetailActivity extends AppCompatActivity{ private WebView mWebView; private boolean isFavourite = false; private Stories stories; private HotStories hotStories; private ViewPager pager; @Override protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.item_news);Toolbar toolbar = (Toolbar) findViewById(R.id.tb1);toolbar.setTitle('享受閱讀的樂趣');toolbar.setTitleTextColor(getResources().getColor(R.color.white));setSupportActionBar(toolbar);toolbar.setNavigationIcon(R.drawable.arrow_back);toolbar.setNavigationOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) {finish(); }});mWebView = (WebView) findViewById(R.id.webview);setWebView(mWebView); pager = (ViewPager) findViewById(R.id.viewpager); pager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {@Overridepublic void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {}@Overridepublic void onPageSelected(int position) { if (position == 0) {stories = (Stories) getIntent().getSerializableExtra('stories');new LoadNewsDetailTask(mWebView).execute(stories.getId());isFavourite = DailyZhDB.getInstance(NewsDetailActivity.this).isFavourite(stories); }else if (position == 1){hotStories= (HotStories) getIntent().getSerializableExtra('hotstories');new LoadNewsDetailTask(mWebView).execute(hotStories.getId()); }}@Overridepublic void onPageScrollStateChanged(int state) {} }); } private void setWebView(WebView mWebView) {mWebView.getSettings().setJavaScriptEnabled(true);mWebView.setVerticalScrollBarEnabled(false);mWebView.setHorizontalScrollBarEnabled(false); } public static void startActivity(Context context, Stories news) { if (Utility.checkNetworkConnection(context)) {Intent i = new Intent(context, NewsDetailActivity.class);i.putExtra('stories', news);context.startActivity(i); } else {Utility.noNetworkAlert(context); }}public static void startHotActivity(Context context, HotStories news) { if (Utility.checkNetworkConnection(context)) {Intent i = new Intent(context, NewsDetailActivity.class);i.putExtra('hotstories', news);context.startActivity(i); } else {Utility.noNetworkAlert(context); }}@Overridepublic boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.menu_main, menu); if (isFavourite) menu.findItem(R.id.action_favourite).setIcon(R.drawable.fav_active); return true;}@Overridepublic boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()){case R.id.action_settings: break;case R.id.action_favourite: if (!isFavourite) {DailyZhDB.getInstance(this).saveFavourite(stories);item.setIcon(R.drawable.fav_active);isFavourite = true; } else {DailyZhDB.getInstance(this).deleteFavourite(stories);item.setIcon(R.drawable.fav_normal);isFavourite = false; } break; } return true;}
}
主Activity
問題解答
回答1:你前面findViewById就沒有找到,后面使用ViewPager肯定是空的。你得檢查一下自己的id是不是寫錯了。
相關(guān)文章:
1. 在mac下出現(xiàn)了兩個docker環(huán)境2. html - sumlime text3代碼自動補全功能問題!3. web - css3 @keyframes用一次后面的任何樣式就解析不了了.4. javascript - 有一個異步獲取數(shù)據(jù)的函數(shù)A,其他依賴這個A得到的數(shù)據(jù)的函數(shù)是否都必須是異步的?5. css3 - 給body設(shè)置了translate3d,動畫的同時導(dǎo)致內(nèi)部的fixed元素失效?6. node.js - win7 grunt不是內(nèi)部或外部命令。7. 想練支付寶對接和微信支付對接開發(fā)(Java),好像個人不可以,怎么弄個企業(yè)的呢?8. node.js - 用node做微信開發(fā)后臺,獲取access_token報錯9. css3 - 求css頁面解決方案10. javascript - 大神們,求救啊,搞百度編輯器,弄了三天了,問題,如下
