2016-12-01 2 views
1

Ich folge diesem Tutorial android-material-design-gridviewIntent von Adapter

Ich möchte Absicht von dieser Basiskarte starten;

public class CustomAndroidGridViewAdapter extends BaseAdapter { 

private Context mContext; 
private final String[] string; 
private final int[] Imageid; 

public CustomAndroidGridViewAdapter(Context c,String[] string,int[] Imageid) { 
    mContext = c; 
    this.Imageid = Imageid; 
    this.string = string; 
} 



@Override 
public int getCount() { 
    return string.length; 
} 

@Override 
public Object getItem(int p) { 
    return null; 
} 

@Override 
public long getItemId(int p) { 
    return 0; 
} 

@Override 
public View getView(int p, View convertView, ViewGroup parent) { 
    View grid; 
    LayoutInflater inflater = (LayoutInflater) mContext 
      .getSystemService(Context.LAYOUT_INFLATER_SERVICE); 


    if (convertView == null) { 

     grid = new View(mContext); 
     grid = inflater.inflate(R.layout.gridview_custom_layout, null); 
     TextView textView = (TextView) grid.findViewById(R.id.gridview_text); 
     ImageView imageView = (ImageView)grid.findViewById(R.id.gridview_image); 
     textView.setText(string[p]); 
     imageView.setImageResource(Imageid[p]); 
    } else { 
     grid = (View) convertView; 
    } 

    return grid; 
}} 

und das ist MainActivity

public class MainActivity extends AppCompatActivity { 

Toolbar toolbar; 
CollapsingToolbarLayout collapsingToolbarLayoutAndroid; 
CoordinatorLayout rootLayoutAndroid; 
GridView gridView; 
Context context; 
ArrayList arrayList; 

public static String[] gridViewStrings = { 
     "Helper InSiti", 
     "Parkir InSiti", 


}; 
public static int[] gridViewImages = { 
     R.drawable.icon_helper_insiti, 
     R.drawable.icon_parkir_insiti, 

}; 

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

    toolbar = (Toolbar) findViewById(R.id.toolbar); 
    setSupportActionBar(toolbar); 
    gridView = (GridView) findViewById(R.id.grid); 
    gridView.setAdapter(new CustomAndroidGridViewAdapter(this, gridViewStrings, gridViewImages)); 

    initInstances(); 
} 

private void initInstances() { 
    rootLayoutAndroid = (CoordinatorLayout) findViewById(R.id.android_coordinator_layout); 
    collapsingToolbarLayoutAndroid = (CollapsingToolbarLayout) findViewById(R.id.collapsing_toolbar_android_layout); 
    collapsingToolbarLayoutAndroid.setTitle("Material Grid"); 
}} 

Sein enthalten 2 Image Symbol, das für Taste onClick auf eine andere Tätigkeit verwende ich viele Möglichkeiten, versuchen Absicht von MainActivity auf eine andere Tätigkeit zu beginnen, aber nicht ... Bitte helfen ...

Antwort

0

Da Sie den Kontext in den Konstruktor Ihres Adapter erhalten:

public CustomAndroidGridViewAdapter(Context c,String[] string,int[] Imageid) { 
    mContext = c; 
    this.Imageid = Imageid; 
    this.string = string; 
} 

Nutzung diesem Zusammenhang die Intent, zum Beispiel zu starten:

Intent intent = new Intent(mContext, OtherActivity.class); 
mContext.startActivity(intent); 
+0

Leider Sir ... ich wirklich Noob bezüglich dieser one..Coz ich noch nie Intent in der Base Adapter verwenden ... Wo und Wie genau sollte ich diese Absicht Sache setzen? Danke für Ihre Zeit –