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.
  • 相关阅读:
    Zookeeper 基础知识【1】
    Spark 基础复习【1】
    ZooKeeper 入门 一致性
    Hive 视图 索引
    Yarn调度 历史与基础
    mysql 优化【1】
    TCP IP知识梳理
    Java 基础 锁
    Spark 累加器使用
    RATE-MAX----beta答辩博客
  • 原文地址:https://www.cnblogs.com/yahb/p/4201275.html
Copyright © 2011-2022 走看看