Ich versuche, eine Anwendung mit jeremy feinstein SlidingMenu Bibliothek zu entwickeln, die ich sehr interessant fand. Ich habe alles eingerichtet und ein Beispielprojekt erstellt, nur um zu überprüfen, ob ich das gleitende Menü implementieren kann, aber leider konnte ich in meiner Anwendung kein gleitendes Menü sehen.Implementierung von Sliding Menu J. Feinstein
das sind die Dinge, was ich tat,
SlidinMenu aus HERE und importiert in Eclipse als android existierendes Projekt heruntergeladen. Google API-Level wurde geändert. (Jetzt keine rote Markierung mehr.)
Ein neues Projekt erstellt und die verschiebbare Menübibliothek hinzugefügt.
Wie Jfeinstein erklärt, habe ich den folgenden Code zu meinem MainActivity.java
public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setTitle("Title !"); setContentView(R.layout.activity_main); SlidingMenu menu = new SlidingMenu(this); menu.setMode(SlidingMenu.LEFT); menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN); menu.setShadowWidthRes(R.dimen.shadow_width); menu.setShadowDrawable(R.drawable.shadow); menu.setBehindOffsetRes(R.dimen.slidingmenu_offset); menu.setFadeDegree(0.35f); menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT); menu.setMenu(R.layout.menu); }
}
und meine activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >
<com.slidingmenu.lib.SlidingMenu
xmlns:sliding="http://schemas.android.com/apk/res-auto"
android:id="@+id/slidingmenulayout"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
sliding:viewAbove="@layout/testing"
sliding:viewBehind="@layout/testing_two"
sliding:touchModeAbove="margin"
sliding:behindWidth="@dimen/shadow_width"
sliding:behindScrollScale="0.5"
sliding:shadowDrawable="@drawable/shadow"
sliding:shadowWidth="@dimen/shadow_width"
sliding:fadeEnabled="true"
sliding:selectorEnabled="true"/>
</RelativeLayout>
und menu_frame.xml
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/menu_frame"
android:layout_width="match_parent"
android:layout_height="match_parent" />
testing.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Test"/>
</LinearLayout>
und ich habe kopiert seine menu.xml, shadow.xml, dimen.xml in mein Projekt .
Und wenn ich es benutze ich sah nichts als diese Fehler,
01-31 22:18:13.027: E/AndroidRuntime(759): FATAL EXCEPTION: main
01-31 22:18:13.027: E/AndroidRuntime(759): java.lang.RuntimeException: Unable to start activity ComponentInfo{android.demo.com/android.demo.com.MainActivity}: android.view.InflateException: Binary XML file line #2: Error inflating class fragment
Ich weiß nicht, wo ich einen Fehler gemacht. Ich habe viel versucht und ich konnte nichts online herausfinden. Jede Art von Hilfe oder Beispiel wird sehr geschätzt. Danke!
Dies scheint nicht ein Fehler mit allem, was Sie gepostet haben. Wo willst du deine Fragmente für das SlidingMenu aufblasen? – hwrdprkns
@hwrdprkns Das ist was, ich verstehe wirklich nicht, wo ich einen Fehler gemacht habe. Bitte schlage mir etwas vor. –
Ich vermute, dass Sie Ihr SlidingMenu nicht in RelativeLayout einschließen müssen. Dies ist jedoch kein Problem mit SlidingMenu, da es keine Fragmente verwendet. Poste dein '@ Layout/Testen', ich vermute, dass das Problem dort liegt. – hwrdprkns