zoukankan      html  css  js  c++  java
  • 使用ButterKnife无法inject view的解决办法

    使用ButterKnife做android开发时,发现无法inject,如下,tvInfo总是null。

    	@InjectView(R.id.textView1Info) TextView tvInfo;
    
    	@Override
    	public void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		getWindow().requestFeature(Window.FEATURE_NO_TITLE);
    		setContentView(R.layout.main);
    		
    		ButterKnife.inject(this);
    		tvInfo.setText("test");// tvInfo is null.
    	}
    

    后来在官网上找到解决办法,如下:

    http://jakewharton.github.io/butterknife/ide-eclipse.html

    Eclipse Configuration

    1. Right click on your project in the Package Explorer. Head to Java Compiler → Annotation Processing and check "Enable project specific settings".

      Ensure the other annotation processing settings are the same as shown below:

    2. Expand the Annotation Processing section and select Factory Path. Check "Enable project specific settings" and then click "Add JARs…". Navigate to the project's libs/ folder and select the Butter Knife jar.

    3. Click "Ok" to save the new settings. Eclipse will ask you to rebuild your project to which you should click "Yes"
    4. Make sure that the .apt_generated/ folder is in your project root. It should contain files like YOURACTIVITY$$ViewInjector.java. If these files are not present trigger a clean build by selected Project → Clean. This folder and files should not be checked into revision control.
    5. Lastly, under "Java Compiler", make sure that the Compiler compliance level is set to Java version 1.6 at minimum.
  • 相关阅读:
    valgrind使用手册
    [转]windows server 2008 多用户远程登录设置
    ios控件学习 IB实现
    把java变成exe
    python 函数 值传递
    java 经验
    python list 去除重复
    xcode 4.2 基础
    mac 使用
    object c 基础语法
  • 原文地址:https://www.cnblogs.com/yahb/p/4201275.html
Copyright © 2011-2022 走看看