نصب پلاگین کتابخانه ButterKnife در اندروید استودیو ، در آموزش قبل با تمامی آپشن ها و انوتیشن هایی که این کتابخانه فوق العاده در اختیارما قرار میداد آشنا شدیم (پیشنهاد میکنم اگر هنوز مطالعه نکردید حتما یه نگاهی بندازید تا متوجه بشید تا حالا چقدر کدهای اضافی میزدین 🙂 ) خب رسالت این کتابخانه کم کردن کار برنامه نویس بود پس پلاگینی هم که معرفی میکنیم خیلی بیشتر مارو راحت میکنه تا فقط با چندکلیک حتی انوتیشن ها هم خودشون ایجاد بشن!
شما میتونید خیلی راحت با نصب پلاگین این کتابخانه در پروژه سرعت اضافه کردن انوتیشن هارا بیشتر کنید و انوتیشن ها را Generate کنید.
بی درنگ میریم برای مراحل نصب پلاگین
۱- از مسیر File/ Setting ویا کلیدهای میانبر Ctrl + Alt +S به تنظیمات پروژه بروید.
۲- از پنل سمت چپ Plugin را انتخاب کنید.
۳- در قسمت search عبارت ButterKnife را تایپ کرده گزینه Browse repositories... را کلیک کنید تا پلاگین های مربوطه را پیدا کند سپس مطابق تصویر زیر آیتم Android ButterKnife Zeleny را انتخاب و install
۴- در نهایت هم اندروید استودیو از شما می خواهد که برنامه را یکبار restart کنید که بهتر است این کار را انجام دهید.
حالا پلاگین ButterKnife برروی اندروید استودیو شما نصب شده میتوانید و به راحتی از آن استفاده کنید تنها کافی است در اکتیویتی یا فرگمنت خود برروی layout resource ID یا همان id فایل xml خود کلیک راست کرده و گزینه Generate.. یا کلید میانبر Alt + Insert را کلیک کنید
و گزینه generate ButterKnife Injection را انتخاب کنید
سپس پنجره ای برای انتخاب view های درون فایل xml انتخابی به شما نمایش داده میشود که هرکدام را که میخواهید bind شود باید انتخاب کنید همچنین انوتیشن onClick برای هرکدام که مورد نیاز بود
در نتیجه تصویر فوق دستورات زیر برای ما generate می شوند
@BindView(R.id.nameTextView)
TextView nameTextView;
@BindView(R.id.nameEditText)
EditText nameEditText;
@BindView(R.id.button2)
Button button2;
@BindView(R.id.button)
Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ButterKnife.bind(this);
}
@OnClick({R.id.button2, R.id.button})
public void onViewClicked(View view) {
switch (view.getId()) {
case R.id.button2:
break;
case R.id.button:
break;
}
}
موفق باشید 🙂