导航抽屉项目

导航抽屉项目

问题描述:

如果我点击导航抽屉项目中的图库,我需要为图库页面创建一个单独的活动。下面我张贴了我到目前为止尝试过的代码。导航抽屉项目

MainActivity.java:

private class SlideMenuClickListener implements 
      ListView.OnItemClickListener { 
     @Override 
     public void onItemClick(AdapterView<?> parent, View view, int position, 
       long id) { 
      // display view for selected nav drawer item 
      displayView(position); 
     } 
    } 


private void displayView(int position) { 
    // update the main content by replacing fragments 
    Fragment fragment = null; 
    switch (position) { 
    case 0: 
     fragment = new GalleryFragment(); 
     break; 
    case 1: 
     fragment = new FindPeopleFragment(); 
     break; 
    case 2: 
     fragment = new PhotosFragment(); 
     break; 

    default: 
     break; 
    } 

GalleryFragment.java:

public class GalleryFragment extends Fragment { 

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, 
     Bundle savedInstanceState) { 

    View rootView = inflater.inflate(R.layout.chapter, container, false); 

    Intent i = new Intent(getActivity(), GalleryActivity.class); 
    startActivity(i); 

    return rootView; 
} 

}

gallery.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" > 

</LinearLayout> 

GalleryActivity.java:

public class GalleryActivity extends Activity { 

    TextView textView1; 

    @Override 
    protected void onCreate(Bundle savedInstanceState){ 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.gallery_activity); 

     textView1=(TextView)findViewById(R.id.textView1); 


    } 

} 

gallery_activity.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:id="@+id/textView1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Lesson Page" /> 

</LinearLayout> 

到目前为止,我不喜欢它this.But它不是working.In输出,首先我正在为图库获取单独的活动。那么如果我点击后退按钮,它会显示主页。但是,如果我点击导航抽屉中的图库,它不会移动到单独的图库活动。logcat中没有错误。

+0

什么时候“不工作”会怎样? – Henry 2014-11-01 06:44:43

+0

@亨利没有日志错误。但它不起作用意味着它不会移动到单独的活动。 – Steve 2014-11-01 06:46:02

displayView中的代码确实没有任何效果(假设您没有发布任何内容)。它设置一个局部变量fragment,该方法结束时超出范围。

如果你想开始GalleryActivity你需要类似下面的代码:

Intent i = new Intent(context, GalleryActivity.class); 
startActivity(i); 
+0

现在我在这一行得到空指针异常'Intent i = new Intent(context,GalleryActivity.class);' – Steve 2014-11-01 07:00:18

+0

我写了* similar *。这些文字并不意味着被逐字复制。您需要将'context'参数设置为有效的上下文。 – Henry 2014-11-01 07:06:33

+0

我这样做.'private静态上下文mContext;'然后'意图我=新的意图(mContext,GalleryActivity.class);' – Steve 2014-11-01 07:07:59