C'est ce que je pensais, mais l'objet revoie bien NULL comme valeur. Dans mon autre view.
Je vais vous donner un peu plus de détails et peut-être allez vous trouver une solution.
Dans ma Classe de départ:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| public class MainActivity extends FragmentActivity implements ActionBar.TabListener {
public static Acces accessory = null; //initialisation de l'objet en static!
//blablabla... plein de lignes de codes....
accessory = loadAccessory(device); //appelle de la fonction qui retourne mon objet.. ici tout est ok. Je peux utiliser "accessory"
//voici la dite fonction (pardon ... méthode)
public Acces loadAccessory(UsbDevice device) {
/* Load the correct class for the USB device detected */
Acces monAccessoire = Acces.loadAccessory(this.getApplicationContext(), device, handler);
setTitle(monAccessoire.getDeviceTitle());
return monAccessoire;
}
} |
La classe Access est la suivante. Elle est abstract et sert à ouvrir la bonne classe.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| public abstract class Acces implements AccesInterface {
public static Acces loadAccessory(Context context, UsbDevice device, Handler handler){
//Check the USB device which kind it is
if((device.getVendorId() == (int)0x04D8) && (device.getProductId() == (int)0xF777)) {
return new HID1(context, device, handler);
}
if((device.getVendorId() == (int)0x04D8) && (device.getProductId() == (int)0xF778)) {
return new HID2(context, device, handler);
}
if((device.getVendorId() == (int)0x04D8) && (device.getProductId() == (int)0xF779)) {
return new HID3(context, device, handler);
}
return null;
}
} |
Voici un exemple de classe HID1
1 2 3 4 5
| public class HID1 extends Acces implements Runnable, AccesInterface {
... object, fields, et méthodes.
} |
Je dois donc accéder à l'objet de la classe HID1 qui se nomme "accessory" dans la MainActivity view.
Le problème arrive lorsque je clique sur un bouton qui m'amène dans une autre view
Intent intent = new Intent(getActivity(), SecondeVueSwipeViews.class);
A l'intérieur de cette classe, si j'essaie d'accéder à MainActivity, il n,est plus disponible (lifeCycle des activitées android) et je ne sais pas comment accéder à la l'objet "accessory" sans passer par MainActivity.
Voilà.
Partager