2016-06-13 4 views
1

보기 위해 리스너를 추가 할 수 없습니다 나는이 같은 Gradle을에 버터 나이프 라이브러리를 추가 :ButterKnife 안드로이드 :

dependencies { 
    compile 'com.jakewharton:butterknife:8.0.1' 
    ... 
} 

이 ID btnPressButton을 만들었습니다. 내 활동에서 응용 프로그램을 실행할 때 @onClick(R.id.btnPress) 메서드를 추가하려고 시도했지만 메서드가 실행되지 않습니다.

활동 :의 buildscript 종속성에서

classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8' 

:

는 먼저, 최상위 build.gradle 파일에 포함 :

public class MainActivity extends AppCompatActivity { 

    @BindView(R.id.btnPress) 
    Button btnPress; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     ... 
     ButterKnife.bind(MainActivity.this); 
    } 

    //This method is not being called when Button is pressed. 
    @OnClick(R.id.btnPress) 
    void onPress() { 
     ... 
    } 
} 
+0

당신은'ButterKnife.Bind'를 호출하기 전에'setContentView'를 호출 :

지금 모듈 수준 build.gradle에서 ButterKnife 라이브러리와 컴파일러를 포함? 및 레이아웃 및보기 ID를 확인하십시오. –

+0

@MohammadRahchamani 예, 바인딩하기 전에보기 설정 중입니다. 내가 레이아웃 ID를 확인했습니다, 그들은 동일합니다. –

+0

모듈 레벨'build.gradle'과'classpath 'com.neenbedankt.gradle.plugins : android-apt : 1.8''에서'apt'com.jakewharton : butterknife-compiler : 8.0.1''을 추가 했습니까? 프로젝트 레벨'build.gradle'? –

답변

1

여기에 내가이 문제를 해결하는 방법은 예 :

buildscript { 
    dependencies { 
     classpath 'com.android.tools.build:gradle:2.0.0' 
     classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8' 
    } 
    } 

모듈의 build.gradle 파일에서 상단에 apply plugin: 'com.neenbedankt.android-apt'을 포함하십시오.

dependencies { 
    compile 'com.jakewharton:butterknife:8.0.1' 
    apt 'com.jakewharton:butterknife-compiler:8.0.1' 
    ... 
} 
관련 문제