için araçlar tarafından kullanılan yapıcısı eksik aşağıdaki uyarı var: (Bağlam) veya (Bağlam:Özel görünüm adaptörü
Özel görünüm com/example/görünüm/adaptör/SomeAdapter araçları tarafından kullanılan yapıcısı eksik , öznitelik) ya da (Bağlam, öznitelik, int) benim sınıf SomeAdapter içinde
public class SomeAdapter extends BaseAdapter{}
public abstract class BaseAdapter extends ArrayAdapter<SomeModel>{}
ArrayAdapter uzanan bazı BaseAdapter uzandığı
Uyarı, somut adaptörde mevcut, ancak soyut BaseAdapter'de mevcut değil. Bu uyarıyı bu bağlamda duymuş olan var mı? Bildiğim kadarıyla benim sınıf adları yukarıdaki kalıbı eşleşmeyen gördüğünüz gibi
private static boolean isViewClass(ClassContext context, ClassNode node) {
String superName = node.superName;
while (superName != null) {
if (superName.equals("android/view/View") //$NON-NLS-1$
|| superName.equals("android/view/ViewGroup") //$NON-NLS-1$
|| superName.startsWith("android/widget/") //$NON-NLS-1$
&& !((superName.endsWith("Adapter") //$NON-NLS-1$
|| superName.endsWith("Controller") //$NON-NLS-1$
|| superName.endsWith("Service") //$NON-NLS-1$
|| superName.endsWith("Provider") //$NON-NLS-1$
|| superName.endsWith("Filter")))) { //$NON-NLS-1$
return true;
}
superName = context.getDriver().getSuperClass(superName);
}
return false;
}
:
AFAIK Android onlar ViewConstructorDetector aracılığıyla süper sınıfların adını işaretleyerek görüşlerini uzatıyoruz için sınıfları denetler. Bu uyarının nasıl giderileceği veya bastırılacağı konusunda herhangi bir fikri var mı? BaseAdapter içinde
GetView(): bir kurucu bulması gerektiğini (örneğin Eclipse için Android düzeni editörü olarak)
public CustomView(Context context) {
super(context);
}
public CustomView(Context context, AttributeSet attrs) {
super(context, attrs);
}
Bağdaştırıcınızı neler kullanıyor? Özel bir görüşünüz var mı? – Neil
Hayır, hiçbir şey uygulamıyorum. Sadece ArrayAdapter'i genişletmek. Hangi amaçla – salcosand
? Bir adaptör kendi başına çalışamaz. Ne için kullanmak istersin? – Neil