注解:xUtils之----ViewUtils

ViewUtils用法:

android中的ioc框架,完全注解方式就可以进行UI,资源和事件绑定

ViewUtil模块注解,可以用在Activity,Fragment,BaseAdapter

只要加载布局视图的地方,都能够使用ViewUtils模块中的注解

》 用在Activity中:

1, 加载布局,布局注入:

// 应用到Activity类型上
@ContentView(R.layout.cal_layout)

// onCreate方法中, 使用ioc实现依赖注入
ViewUtils.inject(this);

2,UI绑定注入:

// 注解的value属性值就是该UI的id
@ViewInject(R.id.et_num2)

3,资源的注入:

// id设置资源的ID,type设置资源的类型
// ResType是一个枚举类型

@ResInject(id=R.drawable.ic_launcher,type=ResType.Drawable)
private Drawable drawable1;

@ResInject(id=android.R.color.darker_gray,type=ResType.Color)
private Color color1;

@ResInject(id=R.string.cal_result_tip,type=ResType.String)
private String tip;

4,事件的绑定

事件注解都定义在下面包中:
com.lidroid.xutils.view.annotation.event

@OnClick

事件注解设置的方法格式,必须和对应事件监听的回调方法一致

@OnClick(
{R.id.btn_add,R.id.btn_subtract,
R.id.btn_multiply,R.id.btn_divide})
public void onClick(View view)
{

}

》用在Fragment中:

@Override
public View onCreateView(
    LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) 
{
    // 加载布局
    View view = inflater.inflate(R.layout.db_fragment, container, false);

    // 依赖注入
    ViewUtils.inject(this, view);

    return view;
}

@ViewInject(R.id.db_test_btn)
private Button stopBtn;

@ViewInject(R.id.result_txt)
private TextView resultText;

@OnClick(R.id.db_test_btn)
public void testDb(View view) {
}

》用在BaseAdapter中:

public class ViewHolder
{
    @ViewInject(R.id.hotel_image)
    public ImageView hotel_image;

    @ViewInject(R.id.hotel_name)
    public TextView hotel_name;

    @ViewInject(R.id.hotel_score)
    public TextView hotel_score;
}

convertView = mInflater.inflate(R.layout.hotel_list_item, null);

// 依赖注入
// 在BaseAdapter中绑定UI
// 1,第一个参数ViewHolder
// 2,第二个参数是加载的View
ViewUtils.inject(mHolder, convertView);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值