0
私の活動は、スニペット:プライベートフィールドで動作する注釈ライブラリですか?
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。それはうまくいく。
しかし、このフィールドはプライベートではないので、はカプセル化に違反していると思います。 私は誰にも活動の内側の提出物について知りたくありません。
だから、理想的なソリューションは、このようなsomehingする必要があります:
@BindView(R.id.productTitleTextView)
private TextView productTitleTextView;
質問です:
はこれを行うことができますAndroidの注釈libがいますか?
おそらく別のアノテーションがありますか? – Alexei
フィールドが公開されているように、私が働いていたライブラリのほとんどは、それらにアクセスできます。他のオブジェクトのためにそれらを非表示にする場合は、findViewByIdを使用することをお勧めします –