2015-01-21 100 views
0

我想要在查看傳呼機中的特定頁面中更改imageresource。這就是我所做的。在ViewPager的特定頁面中更改ImageView源代碼Android

這是活動的onCreate ...

 ((PlaceholderFragment)mSectionsPagerAdapter.getItem(0)).updateImage(R.drawable.help1); 
     ((PlaceholderFragment)mSectionsPagerAdapter.getItem(1)).updateImage(R.drawable.help2); 
     ((PlaceholderFragment)mSectionsPagerAdapter.getItem(2)).updateImage(R.drawable.help3); 
     ((PlaceholderFragment)mSectionsPagerAdapter.getItem(3)).updateImage(R.drawable.help4); 

這是片段類...

public static class PlaceholderFragment extends Fragment { 
     /** 
     * The fragment argument representing the section number for this 
     * fragment. 
     */ 
     private static final String ARG_SECTION_NUMBER = "section_number"; 

    /** 
    * Returns a new instance of this fragment for the given section 
    * number. 
    */ 
    public static PlaceholderFragment newInstance(int sectionNumber) { 
     PlaceholderFragment fragment = new PlaceholderFragment(); 
     Bundle args = new Bundle(); 
     args.putInt(ARG_SECTION_NUMBER, sectionNumber); 
     fragment.setArguments(args); 
     return fragment; 
    } 

    public PlaceholderFragment() { 
    } 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
          Bundle savedInstanceState) { 
     View rootView = inflater.inflate(R.layout.fragment_help, container, false); 
     ImageView imageView = (ImageView) rootView.findViewById(R.id.imageHelp); 
     imageView.setImageResource(R.drawable.help4); 
     return rootView; 
    } 

    public void updateImage(int image){ 
     ImageView imageView = (ImageView) getView().findViewById(R.id.imageHelp); 
     imageView.setImageResource(image); 

    } 
} 

但不知何故,它仍然給我錯誤空指針異常。我怎麼錯過? 以前感謝,請幫助我:)我在這裏停留了大約2個小時。

+0

顯示您的logcat以及顯示空指針異常的哪一行。 – duggu 2015-01-21 13:08:10

+0

引起︰java.lang.NullPointerException︰嘗試調用空對象引用虛擬方法'android.view.View android.view.View.findViewById(int)' 原因由行ImageView imageView =(ImageView)rootView。 .. – user2565280 2015-01-22 00:52:42

回答

0
// declare rootView as global variable 

public void updateImage(int image){ 
    ImageView imageView = (ImageView) rootView.findViewById(R.id.imageHelp); 
    imageView.setImageResource(rootView); 
} 
+0

我這樣做,使rootView全局,但不知何故它仍然給我的錯誤引起:java.lang.NullPointerException:嘗試調用虛擬方法'android.view.View android.view.View.findViewById(int)'on空對象引用 – user2565280 2015-01-22 00:54:11

+0

請提供一些更多的澄清代碼 – koutuk 2015-01-22 05:35:42

相關問題