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.
  • 相关阅读:
    typescript-泛型-类型检查
    typescript-class-interface
    typescript-类class
    typescript-接口interface
    Oracle 密码过期
    VMware Redhat虚拟机扩容硬盘
    华硕 U系列电脑拆后盖注意事项
    VS + QT 出现 LNK2001 无法解析的外部符号 QMetaObject 的问题
    c++ _pFirstBlock == pHead
    c++ 套路多
  • 原文地址:https://www.cnblogs.com/yahb/p/4201275.html
Copyright © 2011-2022 走看看