Si recordem estàvem creant un dau fa uns quants posts (m'ha pillat vacances, i les vacances, vacances són ;)). Ara anem a aprofitar el projecte que teníem que simplement era test i la classe dau, i anem a afegir un nou projecte, per exemple Windows phone: (Botó dret sobre la solució i afegir nou projecte) seleccionem Windows phone:
Afegim un botó que quan fem click cree un dau, i mostre el número. Haurem de referenciar els projectes Project->Add Reference, seleccionar projecte i posem el projecte dau per a poder crear el dau, a banda de es recomanable que tot tinga el mateix namespace, si no haurem d'anar afegint usings.
Es possible que si actualitzeu els namespaces vos done problemes. Haureu també de canviar-ho als arxius .xaml:x:Class="RollDice.App ...
on RollDice és el nom del namespace. Afegim un botó, i un event capturador de l'event:
private void Button_Click_1(object sender, RoutedEventArgs e)
{
Dau d = new Dau(10);
int res = d.Tirada();
MessageBox.Show(res.ToString());
}
I veiem el resultat:
Ara anem a fer el mateix amb Android, crearem un projecte Android:
El que anem a fer és substituir el codi de la funció delegada per capturar l'event que hi ha, per un codi similar al que tenien en la funció anterior. Però abans cal enllaçar la classe dau. En principi i en teoria a l'haver fet una biblioteca de classes podriem fer-ho directament afegint al projecte d'Android una referència al projecte Dau, però com hi ha un problema de moment (en teoria estan a punt d'arreglar-ho), anem a fer una xapusa i anem a enllaçar l'arxiu (afegir arxiu existent) de la classe dau.cs i així ho tindrem arreglat. Una vegada ho tenim, canviem el codi de l'event Click per:
button.Click += delegate {
RollDice.Dau d = new RollDice.Dau(10);
int res = d.Tirada();
button = FindViewById<Button>(Resource.Id.MyButton);
button.Text = res.ToString();
};
Arranquem, ens dirà que seleccionem la imatge de l'emulador i tal, i després d'un ratet (la primera vegada ha d'instal·lar tot el framework .net a l'emulador):
I ja hem vist com gastar el mateix codi per a Android i per a Windows Phone ;)
Afegim un botó que quan fem click cree un dau, i mostre el número. Haurem de referenciar els projectes Project->Add Reference, seleccionar projecte i posem el projecte dau per a poder crear el dau, a banda de es recomanable que tot tinga el mateix namespace, si no haurem d'anar afegint usings.
Es possible que si actualitzeu els namespaces vos done problemes. Haureu també de canviar-ho als arxius .xaml:x:Class="RollDice.App ...
on RollDice és el nom del namespace. Afegim un botó, i un event capturador de l'event:
private void Button_Click_1(object sender, RoutedEventArgs e)
{
Dau d = new Dau(10);
int res = d.Tirada();
MessageBox.Show(res.ToString());
}
I veiem el resultat:
El que anem a fer és substituir el codi de la funció delegada per capturar l'event que hi ha, per un codi similar al que tenien en la funció anterior. Però abans cal enllaçar la classe dau. En principi i en teoria a l'haver fet una biblioteca de classes podriem fer-ho directament afegint al projecte d'Android una referència al projecte Dau, però com hi ha un problema de moment (en teoria estan a punt d'arreglar-ho), anem a fer una xapusa i anem a enllaçar l'arxiu (afegir arxiu existent) de la classe dau.cs i així ho tindrem arreglat. Una vegada ho tenim, canviem el codi de l'event Click per:
button.Click += delegate {
RollDice.Dau d = new RollDice.Dau(10);
int res = d.Tirada();
button = FindViewById<Button>(Resource.Id.MyButton);
button.Text = res.ToString();
};
Arranquem, ens dirà que seleccionem la imatge de l'emulador i tal, i després d'un ratet (la primera vegada ha d'instal·lar tot el framework .net a l'emulador):
I ja hem vist com gastar el mateix codi per a Android i per a Windows Phone ;)
Comentaris
Publica un comentari a l'entrada