-7

Ich versuche eine Aktivität aufzurufen, wenn ein Element aus meiner GridView geklickt wird es wird in einer Wischaktivität geöffnet und es wird das entsprechende Bild angezeigt, aber ich bekomme einen Fehler auf alsSo öffnen Sie ein Bild von Itemclick Listener

Einstellung
E/AndroidRuntime: FATAL EXCEPTION: main 
Process: com.union.project, PID: 2194 
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.union.project/com.union.project.Swipeview.Main4Activity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.v4.view.ViewPager.setAdapter(android.support.v4.view.PagerAdapter)' on a null object reference 
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2325) 
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387) 
at android.app.ActivityThread.access$800(ActivityThread.java:151) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303) 
at android.os.Handler.dispatchMessage(Handler.java:102) 
at android.os.Looper.loop(Looper.java:135) 
at android.app.ActivityThread.main(ActivityThread.java:5254) 
at java.lang.reflect.Method.invoke(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:372) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698) 
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.v4.view.ViewPager.setAdapter(android.support.v4.view.PagerAdapter)' on a null object reference 
at com.union.project.Swipeview.Main4Activity.onCreate(Main4Activity.java:26) 
at android.app.Activity.performCreate(Activity.java:5990) 
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106) 
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2278) 
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387)  
at android.app.ActivityThread.access$800(ActivityThread.java:151)  
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303)  
at android.os.Handler.dispatchMessage(Handler.java:102)  
at android.os.Looper.loop(Looper.java:135)  
at android.app.ActivityThread.main(ActivityThread.java:5254)  
at java.lang.reflect.Method.invoke(Native Method)  
at java.lang.reflect.Method.invoke(Method.java:372)  
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)  
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)  
04-27 01:17:54.025 2194-2194/com.union.project I/Process: S 

dies der Fehler ich immer bin, wenn ich auf anyitem klicken, um es den Toast zeigen, aber dann stürzt mein Fragment Code

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, 
         Bundle savedInstanceState) { 
    // Inflate the layout for this fragment 
    View view= inflater.inflate(R.layout.fragment_two, container, false); 
    GridView gridView=(GridView)view.findViewById(R.id.gridView2); 
    gridView.setAdapter(new UAdapter(getActivity())); 
    gridView.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
     @Override 
     public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
      Toast.makeText(getActivity(),"Pic"+(position)+"Selected",Toast.LENGTH_SHORT).show(); 
      Intent intent= new Intent(view.getContext(),Main4Activity.class); 
      intent.putExtra("pic",position); 
      startActivity(intent); 
     } 
    }); 
    return view; 
} 

meine Swipe-view-Code `

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main4); 
    requestWindowFeature(Window.FEATURE_NO_TITLE); 
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 
    viewPager =(ViewPager)findViewById(R.id.viewpager1); 
    adapter =new CustomeSwipeAdapter2(this); 
    viewPager.setAdapter(adapter); 
    viewPager.setCurrentItem(getIntent().getIntExtra("pic", 0)); 
}` 

Dies ist die Aktivität, die ich starten möchte, aber den Fehler bekommen kann jemand sagen mir, wie das zu beheben.

+1

Ihr Stack-Trace Lesen - 'android.util.AndroidRuntimeException: requestFeature() muss vor dem Hinzufügen von content' aufgerufen werden. –

+1

Mögliches Duplikat von [requestFeature() muss vor dem Hinzufügen von Inhalt aufgerufen werden] (http://stackoverflow.com/questions/4250149/requestfeature-must-be-called-before-adding-content) –

+0

Wie Sie gesagt haben, habe ich aber geändert Ich bekomme immer noch einen Fehler sehen Sie den bearbeiteten Fehler –

Antwort

4

Ihr Fehler selbst gibt Antwort auf Ihre Frage.

requestFeature() must be called before adding content 

Das Ihre zweite Aktivität bedeutet, muss diese Änderung

requestWindowFeature(Window.FEATURE_NO_TITLE); 
setContentView(R.layout.activity_main4); 

requestWindowFeature() sein muss, bevor setContentView()

Nach dem aktualisierten Frage

jetzt Ihr Fehler ist

java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.v4.view.ViewPager.setAdapter(android.support.v4.view.PagerAdapter)' on a null object reference 

müssen Sie diese What is a Null Pointer Exception, and how do I fix it?

1

Anruf requestWindowFeature wie unten

@Override 
public void onCreate(Bundle savedInstanceState) { 
    requestWindowFeature(Window.FEATURE_NO_TITLE); 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.mainmenu); 
} 
0

Wie oben erwähnt zu überprüfen, müssen Sie requestWindowFeature (Window.FEATURE_NO_TITLE) nennen; vor der setContentView-Methode.

+0

Ich entfernte die Fenster-Funktion dann auch ich bekomme Fehler? –

+0

'Super.onCreate (savedInstanceState); requestWindowFeature (Window.FEATURE_NO_TITLE); getWindow(). SetFlags (WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); setContentView (R.layout.mainmenu); ' – am110787

+0

Alternativ können Sie dies auch in Ihrem Aktivitäts-Tag in der Manifest-Datei' android: theme = "@ android: style/Theme.NoTitleBar.Fullscreen" 'versuchen – am110787

0

Das Problem ist in diesen Zeilen

viewPager =(ViewPager)findViewById(R.id.viewpager1); 
adapter =new CustomeSwipeAdapter2(this); 
viewPager.setAdapter(adapter); 
viewPager.setCurrentItem(getIntent().getIntExtra("pic", 0)); 

Erstens: überprüfen, ob Sie eine ViewPager Layout mit der ID von viewpager1 in Ihrem activity_main4 xml haben

Zweitens: Wie übergeben Sie die Bilder auf Ihrem Adapter?! Gibt es Link oder du zeichnest selbst? Sie übergeben nichts an Ihren Adapter !!!!!!!!!!!!!

Drittens: wenn Ihr Adapter leer ist, kann nicht Sie verwenden viewPager.setCurrentItem(getIntent().getIntExtra("pic", 0)); auf sie