Bonjour,

Comment heritier une Interface avec des methodes Overload?

Heritier cette interface:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
 
[JavaSignature('android/telephony/PhoneStateListener')]
  JPhoneStateListener = interface(JObject)
    ['{50CE10E1-C584-4145-BC72-65BFA48BB281}']
    procedure onCallForwardingIndicatorChanged(cfi: Boolean); cdecl;
    procedure onCallStateChanged(state: Integer; incomingNumber: JString); cdecl;
    procedure onCellInfoChanged(cellInfo: JList); cdecl;
    procedure onCellLocationChanged(location: JCellLocation); cdecl;
    procedure onDataActivity(direction: Integer); cdecl;
    procedure onDataConnectionStateChanged(state: Integer); cdecl; overload;
    procedure onDataConnectionStateChanged(state: Integer; networkType: Integer); cdecl; overload;
    procedure onMessageWaitingIndicatorChanged(mwi: Boolean); cdecl;
    procedure onServiceStateChanged(serviceState: JServiceState); cdecl;
    procedure onSignalStrengthChanged(asu: Integer); cdecl;//Deprecated
    procedure onSignalStrengthsChanged(signalStrength: JSignalStrength); cdecl;
  end;
 
  TPL = Class(TJavaLocal, JPhoneStateListener)
    Public
      Constructor Create;
      Destructor Destroy; Override;
      procedure onCallForwardingIndicatorChanged(cfi: Boolean); cdecl;
      procedure onCallStateChanged(state: Integer; incomingNumber: JString); cdecl;
      procedure onCellInfoChanged(cellInfo: JList); cdecl;
      procedure onCellLocationChanged(location: JCellLocation); cdecl;
      procedure onDataActivity(direction: Integer); cdecl;
      procedure onDataConnectionStateChanged(state: Integer); cdecl; Overload;
      procedure onDataConnectionStateChanged(state: Integer; networkType: Integer);  cdecl; Overload;
      procedure onMessageWaitingIndicatorChanged(mwi: Boolean); cdecl;
      procedure onServiceStateChanged(serviceState: JServiceState); cdecl;
      procedure onSignalStrengthChanged(asu: Integer); cdecl;
      procedure onSignalStrengthsChanged(signalStrength: JSignalStrength); cdecl;
  End;
 
Implementation
 
Constructor TPL.Create;
Begin
 
End;
Destructor TPL.Destroy;
Begin
  Inherited Destroy;
End;
procedure TPL.onCallForwardingIndicatorChanged(cfi: Boolean);
Begin
 
End;
procedure TPL.onCallStateChanged(state: Integer; incomingNumber: JString);
Begin
 
End;
procedure TPL.onCellInfoChanged(cellInfo: JList);
Begin
 
End;
procedure TPL.onCellLocationChanged(location: JCellLocation);
Begin
 
End;
procedure TPL.onDataActivity(direction: Integer);
Begin
 
End;
procedure TPL.onDataConnectionStateChanged(state: Integer);
Begin
 
End;
procedure TPL.onDataConnectionStateChanged(state: Integer; networkType: Integer);
Begin
 
End;
procedure TPL.onMessageWaitingIndicatorChanged(mwi: Boolean);
Begin
 
End;
procedure TPL.onServiceStateChanged(serviceState: JServiceState);
Begin
 
End;
procedure TPL.onSignalStrengthChanged(asu: Integer);
Begin
 
End;
procedure TPL.onSignalStrengthsChanged(signalStrength: JSignalStrength);
Begin
 
End;
La compilation donne des erreurs suivants:
[DCC Erreur] Unit31.pas(33): E2211 La déclaration de 'equals' diffère de la déclaration dans l'interface 'JPhoneStateListener'
J'ai déjà essaié avec DELPHI XE6, Delphi XE7 et XE8.

J'ai déjà esaie de rajouter sur le methode overload (Reintroduce, virtual, .....), ça ne marche pas encore.

Pouvez vous m'aider SVP?

Merci d'avance.