butterknife

butterknife
butterknife로 리소스 바인딩을 쉽게 하자.
https://github.com/JakeWharton/butterknife

안드로이드에서 리소스를 사용하려면 findById 메소드를 이용하거나 getResource를 이용하여 바인딩한다. 사용에는 불편이 없으나 이러한 방법은 소스가 너저분해지고 전체적으로 분량도 늘어 가독성이 떨어지며 소스 라인의 수도 증가하여 간결함을 유지하기가 어려워진다. 내부 로직과 유관하기 보다 리소스와 바인딩을 위한 과정이므로 생략을 할 수 있다면 소스가 더 깔끔하게 관리가 될 수 있다.

class ExampleActivity extends Activity {
  @Bind(R.id.user) EditText username;
  @Bind(R.id.pass) EditText password;

  @BindString(R.string.login_error)
  String loginErrorMessage;

  @OnClick(R.id.submit) void submit() {
    // TODO call server...
  }

  @Override public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.simple_activity);
    ButterKnife.bind(this);
    // TODO Use fields...
  }
}
butterknife는 위와 같이 Annotation을 이용하여 내부적으로 리소스 바인딩을 진행해 준다.

댓글

이 블로그의 인기 게시물

ViewPager offscreenPageLimit 메모리 상태

eskimo esim 사용기 - 일본 / 오사카(23/08/06 ~ 23/08/08)

ASP에서 C# 언어로 만든 DLL 호출