2017-05-18 12 views
0

「変数 'navList'を解決できません」というエラーが表示されます。なぜそれがnavListを見つけることができないのか分かりません。誰かが私が間違っている場所を指摘できるなら、私はそれを感謝します。新人質問には申し訳ありません。主なアクティビティエラーの変数が見つかりません

import android.app.Activity; 
import android.support.v7.app.AppCompatActivity; 
import android.support.v7.app.ActionBar; 
import android.support.v4.app.Fragment; 
import android.support.v4.app.FragmentManager; 
import android.content.Context; 
import android.os.Build; 
import android.os.Bundle; 
import android.view.Gravity; 
import android.view.LayoutInflater; 
import android.view.Menu; 
import android.view.MenuItem; 
import android.view.View; 
import android.view.ViewGroup; 
import android.support.v4.widget.DrawerLayout; 
import android.widget.ArrayAdapter; 
import android.widget.TextView; 
import android.widget.ListView; 

public class MainActivity extends AppCompatActivity 
     implements NavigationDrawerFragment.NavigationDrawerCallbacks { 

/** 
* Fragment managing the behaviors, interactions and presentation of the navigation drawer. 
*/ 
private NavigationDrawerFragment mNavigationDrawerFragment; 

/** 
* Used to store the last screen title. For use in {@link #restoreActionBar()}. 
*/ 
private CharSequence mTitle; 

private ListView mDrawerList; 

private ArrayAdapter<String> mAdapter; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    mNavigationDrawerFragment = (NavigationDrawerFragment) 
      getSupportFragmentManager().findFragmentById(R.id.navigation_drawer); 
    mTitle = getTitle(); 

    // Set up the drawer. 
    mNavigationDrawerFragment.setUp(
      R.id.navigation_drawer, 
      (DrawerLayout) findViewById(R.id.drawer_layout)); 

    mDrawerList = (ListView)findViewById(R.id.navList); 

} 

編集 -

<!-- A DrawerLayout is intended to be used as the top-level content view using match_parent for both width and height to consume the full space available. --> 

<!-- As the main content view, the view below consumes the entire 
    space available using match_parent in both dimensions. --> 
<FrameLayout android:id="@+id/container" android:layout_width="match_parent" 
    android:layout_height="match_parent" /> 

<!-- android:layout_gravity="start" tells DrawerLayout to treat 
    this as a sliding drawer on the left side for left-to-right 
    languages and on the right side for right-to-left languages. 
    If you're not building against API 17 or higher, use 
    android:layout_gravity="left" instead. --> 
<!-- The drawer is given a fixed width in dp and extends the full height of 
    the container. --> 
<fragment android:id="@+id/navigation_drawer" 
    android:layout_width="@dimen/navigation_drawer_width" android:layout_height="match_parent" 
    android:layout_gravity="start" android:name="com.yamini.nav.NavigationDrawerFragment" 
    tools:layout="@layout/fragment_navigation_drawer" /> 

+0

activity_main.xmlを送信してください。あなたのandroid:idが間違っている可能性があります。 – Aravindraj

+0

あなたのXMLコードを投稿するactivity_main.xml – sasikumar

+0

あなたのXMLには 'navList'がありません。 –

答えて

0

は、あなたのxmlファイルにはnavListありません

activity_main.xml

コード内の行によって、フラグメントを使用しているように見えます。

代わりにルートビューのNavigationDrawerFragmentからコードを呼び出してみてください。

// inside NavigationDrawerFragment class 
mDrawerList = (ListView)MyRootView.findViewById(R.id.navList); 
+0

コンパイルエラー – chocolateAndMath

+0

@chocolateAndMathあなたは 'MyRootView'をあなたの実際のルートビューに変更したと思いますか?どのようなエラーが表示されますか? – Doomsknight

関連する問題