Değişkenimi kabul etmiyorum Iv'e şimdi bu konuda çok şey okudum ve yeni ADT'nin anahtar deyimleriyle sürekli ifadeler verilmesi gerektiğine dair örnekler buldum, ama herşey hakkında @Inject hakkında hiçbir şey belirtilmiyor.Ek Açıklama
Sorunlu kodlarımın bir örneği.
import roboguice.inject.InjectView;
public abstract class YpListActivity extends GuiceListActivity
@InjectView(R.id.btnSearch)
Button btnSearch;
@InjectView(R.id.btnSpeech)
View btnSpeech;
@InjectView(R.id.etWhat)
EditText etWhat;
@InjectView(R.id.etWhere)
EditText etWhere;
@InjectView(R.id.tvIn)
TextView tvIn;
@InjectView(R.id.tvLocation)
TextView tvLocation;
@InjectView(R.id.tvCustom)
private ToggleButton tvCustom;
@InjectView(R.id.infoButton)
private ImageView iconButton;
denemek ve @injectView (R.id. *) gibi bir şey kullanmak her zaman, tutulma hata atar: "ek açıklama için değer InjectView.value sabit ifadesi olmalıdır öznitelik"
Hatta bu değiştirmeyi denedim:
private static final int btnsrch = new Integer(R.id.btnSearch);
@InjectView(btnsrch)
TableRow btnSearch ;
Nasıl sabit ifadesini "btnsrch" değil ??
Bunu düzeltmek konusunda herhangi bir fikri olan var mı?
Java semantiklerini değiştir, sanırım. –
Daha fazla bilgi için bkz. [RoboGuice bug No. 139] (http://code.google.com/p/roboguice/issues/detail?id=139). [Kütüphane proje kimlikleri ADT 14+ 'den son değil] (http://tools.android.com/tips/non-constant-fields). – JohnnyLambada