Meine Aktivität Snippet:Annotation Lib, die mit privaten Feldern arbeitet?
import butterknife.BindView;
import butterknife.ButterKnife;
public class DetailsActivity extends AppCompatActivity {
@BindView(R.id.productTitleTextView)
TextView productTitleTextView;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.shopping_details);
ButterKnife.bind(this);
productTitleTextView.setText("Hello");
}
OK. Es funktioniert gut.
Aber ich denke, dies verletzt Kapselung, weil Felder nicht privat sind. Ich möchte nicht, dass jemand über die inneren Aktivitäten informiert.
So sollte die ideale Lösung somehing so aussehen:
@BindView(R.id.productTitleTextView)
private TextView productTitleTextView;
Die Frage ist:
Hat Android Anmerkung lib, die dies tun können?
Vielleicht hat eine andere Annotation lib? – Alexei
Die meisten Bibliotheken, mit denen ich gearbeitet habe, damit die Felder öffentlich sind, haben Zugang zu ihnen. Wenn Sie sie für andere Objekte ausblenden, rate ich Ihnen, findViewById zu verwenden –