最新關(guān)注了一些Android的新技術(shù)??偨Y(jié)學(xué)習(xí)一下。
ButterKnife
屬于Android開(kāi)發(fā)的懶人包。用注解來(lái)優(yōu)化控件對(duì)象的實(shí)例化和監(jiān)聽(tīng)的。
代碼段
@Bind(R.id.iv_back) ImageView backButton;
相當(dāng)于ImageView backButton = (ImageView)findViewById(R.id.iv_back);代碼段
backButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
相當(dāng)于
@OnClick(R.id.iv_back)
public void back(){
finish();
}
實(shí)例程序:
添加 compile 'com.jakewharton:butterknife:8.2.1'
public class SearchActivity extends AppCompatActivity {
@Bind(R.id.tag_group)
TagGroup mTagGroup;
@Bind(R.id.iv_back)
ImageView backButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_search);
ButterKnife.bind(this);
mTagGroup.setTags(new String[]{"Tag1", "Tag2", "Tag3"});
}
@OnClick(R.id.iv_back)
public void back(){
finish();
}
}
另外,Android Studio有一個(gè)插件butterknife-zelezny。
添加綁定so easy:https://github.com/avast/android-butterknife-zelezny
Picasso
Picasso是一個(gè)強(qiáng)大的圖片處理緩存庫(kù)。
優(yōu)點(diǎn):
- Handling ImageView recycling and download cancelation in an adapter.
- 低內(nèi)存消耗的復(fù)雜圖片轉(zhuǎn)換
- 自動(dòng)內(nèi)存、硬盤(pán)緩存
用法示例:
compile 'com.squareup.picasso:picasso:2.5.2'
Picasso.with(context)
.load(url)
.placeholder(R.drawable.user_placeholder)
.error(R.drawable.user_placeholder_error)
.into(imageView);