ButterKnife&Picasso

最新关注了一些Android的新技术。总结学习一下。

ButterKnife

属于Android开发的懒人包。用注解来优化控件对象的实例化和监听的。

  • 代码段@Bind(R.id.iv_back) ImageView backButton;
    相当于ImageView backButton = (ImageView)findViewById(R.id.iv_back);

  • 代码段
    backButton.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
    finish();
    }
    });
    相当于
    @OnClick(R.id.iv_back)
    public void back(){
    finish();
    }

实例程序:

添加 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有一个插件butterknife-zelezny。
添加绑定so easy:
https://github.com/avast/android-butterknife-zelezny

Picasso

Picasso是一个强大的图片处理缓存库。

优点:

  • Handling ImageView recycling and download cancelation in an adapter.
  • 低内存消耗的复杂图片转换
  • 自动内存、硬盘缓存

用法示例:

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);

详细:http://square.github.io/picasso/

你可能感兴趣的:(ButterKnife&Picasso)