不同标签布局中的不同gridview

时间:2015-05-05 11:03:44

标签: android eclipse gridview tabs

hye,我是android编程的新手,所以我需要帮助我的项目,我试图创建一个包含3个标签的应用程序,每个标签包含不同的gridview,

这是我当前的主要活动,已经包含了导航器和片段,当您运行该应用时,它将如下图所示http://i59.tinypic.com/9jopyc.jpg[/IMG]

感谢任何帮助过的人。



package id.WKKR.ktcafe;

import tabs.SlidingTabLayout;
import android.content.Intent;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.ActionBarActivity;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v4.widget.DrawerLayout;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.GridView;
import android.widget.TextView;
import android.widget.Toast;
import android.support.v7.widget.Toolbar;
import android.text.Spannable;
import android.text.SpannableString;
import android.text.style.ImageSpan;

@
SuppressWarnings("deprecation")
public class MenuUtama extends ActionBarActivity {

  Toolbar toolbar;
  private ViewPager mPager;
  private SlidingTabLayout mTabs;
  public DaftarMakanan foodList;
  GridView makananGrid;

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

    toolbar = (Toolbar) findViewById(R.id.app_bar);
    setSupportActionBar(toolbar);
    getSupportActionBar().setHomeButtonEnabled(true);
    NavDrawerFragment drawerFragment = (NavDrawerFragment) getSupportFragmentManager()
      .findFragmentById(R.id.fragment_navigation_drawer);
    drawerFragment.setUp(R.id.fragment_navigation_drawer, (DrawerLayout) findViewById(R.id.drawer_layout), toolbar);

    mPager = (ViewPager) findViewById(R.id.MyPager);
    mPager.setAdapter(new MyPagerAdapter(getSupportFragmentManager()));

    mTabs = (SlidingTabLayout) findViewById(R.id.MyTabs);
    mTabs.setDistributeEvenly(true);
    mTabs.setCustomTabView(R.layout.custom_tab_view, R.id.tabsText);
    mTabs.setBackgroundColor(getResources().getColor(R.color.orange));
    mTabs.setSelectedIndicatorColors(getResources().getColor(R.color.brown));

    mTabs.setViewPager(mPager);

  }

  @
  Override
  public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.menu_utama, menu);
    return true;
  }

  @
  Override
  public boolean onOptionsItemSelected(MenuItem item) {
    int id = item.getItemId();
    if (id == R.id.action_settings) {
      Toast.makeText(this, "This Is " + item.getTitle() + " Button",
        Toast.LENGTH_SHORT).show();
      return true;
    }

    if (id == R.id.bill) {
      startActivity(new Intent(this, BillTagihanAnda.class));
    }

    if (id == R.id.pesanan) {
      startActivity(new Intent(this, DaftarPesananAnda.class));
    }

    if (id == R.id.callwaiter) {
      startActivity(new Intent(this, PanggilPelayan.class));
      finish();
    }
    return super.onOptionsItemSelected(item);
  }

  class MyPagerAdapter extends FragmentPagerAdapter {

    int icon[] = {
      R.drawable.ic_food, R.drawable.ic_drink,
        R.drawable.ic_desserts
    };
    String[] tabsText = getResources().getStringArray(R.array.tabs);

    public MyPagerAdapter(FragmentManager fm) {
      super(fm);
      tabsText = getResources().getStringArray(R.array.tabs);

    }

    @
    Override
    public Fragment getItem(int position) {
      MyFragment myFragment = MyFragment.getInstance(position);
      return myFragment;
    }

    @
    Override
    public CharSequence getPageTitle(int position) {
      Drawable drawable = getResources().getDrawable(icon[position]);
      drawable.setBounds(0, 0, 40, 40);
      ImageSpan imageSpan = new ImageSpan(drawable);
      SpannableString spannableString = new SpannableString(" ");
      spannableString.setSpan(imageSpan, 0, spannableString.length(),
        Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

      return spannableString;
    }

    @
    Override
    public int getCount() {
      return 3;
    }

  }

  public static class MyFragment extends Fragment {
    private TextView textView;

    public static MyFragment getInstance(int position) {
      MyFragment myFragment = new MyFragment();
      Bundle args = new Bundle();
      args.putInt("position", position);
      myFragment.setArguments(args);
      return myFragment;
    }

    @
    Override
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
      View layout = inflater.inflate(R.layout.my_fragment, container,
        false);
      textView = (TextView) layout.findViewById(R.id.position);
      Bundle bundle = getArguments();
      if (bundle != null) {
        textView.setText("The Page Selected is " + bundle.getInt("position"));
      }

      return layout;
    }

  }

  class Menus {
    int imageId;
    String menus;
    String menusPrices;

    Menus(int imageId, String menus, String menusPrices) {
      this.imageId = imageId;
      this.menus = menus;
      this.menusPrices = menusPrices;
    }
  }

}




这是我的主要活动xml:



<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:yourapp="http://schemas.android.com/apk/res-auto"
    android:id="@+id/drawer_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        tools:context="id.WKKR.ktcafe.MenuUtama" >

        <include
            android:id="@+id/app_bar"
            layout="@layout/app_bar" />

        <tabs.SlidingTabLayout
            android:id="@+id/MyTabs"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />

        <android.support.v4.view.ViewPager
            android:id="@+id/MyPager"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1" />
    </LinearLayout>

    <fragment
        android:id="@+id/fragment_navigation_drawer"
        android:name="id.WKKR.ktcafe.NavDrawerFragment"
        android:layout_width="@dimen/navigation_drawer_width"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        tools:layout="@layout/activity_nav_drawer_fragment"
        yourapp:layout="@layout/activity_nav_drawer_fragment" />

</android.support.v4.widget.DrawerLayout>
&#13;
&#13;
&#13;

0 个答案:

没有答案