0
Puis-je appeler une activité dans PagerAdapter?Activité d'appel dans PagerAdapter
le bouton de clic est à l'intérieur public override Java.Lang.Object InstantiateItem(ViewGroup container, int position)
puis-je faire dans Xamarin studio visulal 2013?
public class SamplePagerAdapter : PagerAdapter
{
List<string> items = new List<string>();
public SamplePagerAdapter() : base()
{
items.Add(" All Categories ");
items.Add(" Featured ");
}
public override int Count
{
get { return items.Count; }
}
public override bool IsViewFromObject(View view, Java.Lang.Object obj)
{
return view == obj;
}
public override Java.Lang.Object InstantiateItem(ViewGroup container, int position)
{
View view = LayoutInflater.From(container.Context).Inflate(Resource.Layout.pager_item, container, false);
container.AddView(view);
if (position == 0)
{
view = LayoutInflater.From(container.Context).Inflate(Resource.Layout.pager_item, container, false);
container.AddView(view);
var imgcarbtn = view.FindViewById<ImageButton>(Resource.Id.imgcar);
imgcarbtn.Click += imgcarbtn_Click;
}
else if (position == 1) {
view = LayoutInflater.From(container.Context).Inflate(Resource.Layout.featuredadds, container, false);
}
int pos = position + 1;
Console.Out.WriteLine(pos);
container.AddView(view);
return view;
}
void imgcarbtn_Click(object sender, EventArgs e)
{
activity.StartActivity(typeof(Labas));
//weakactivity(Labas) ;
//throw new NotImplementedException();
}
private WeakReference weakactivity;
private Activity activity
{
get { return weakactivity.Target as Activity; }
set { weakactivity = new WeakReference(value); }
}
public SamplePagerAdapter(Activity activity)
: base()
{
this.activity = activity;
}
public string GetHeaderTitle (int position)
{
return items[position];
}
public override void DestroyItem(ViewGroup container, int position, Java.Lang.Object obj)
{
container.RemoveView((View)obj);
}
}
Bonne utilisation de la référence faible! – matthewrdev
ne fonctionne pas ici public class SamplePagerAdapter: PagerAdapter { – BlueAries
Que dois-je mettre ici pour appeler l'activité en utilisant la référence faible? void imgcarbtn_Click (expéditeur d'objet, EventArgs e) { // weakactivity (NewActivity); // throw new NotImplementedException(); } – BlueAries